217 10 2MB
English Pages xviii+214 Year 2015
Agent-based Models of the Economy
Agent-based Models of the Economy From Theories to Applications Riccardo Boero Los Alamos National Laboratory, USA
Matteo Morini University of Torino, Italy and ENS Lyon, France
Michele Sonnessa University of Genova, Italy
Pietro Terna University of Torino (Retired Professor), Italy With additional material by
Elena Tànfani, Angela Testi and Simone Pellegrino
Chapters 1, 9 and 10 © Riccardo Boero 2015 Chapters 2, 3, 4, 5 and 6 © Pietro Terna 2015 Chapter 7 © Michele Sonnessa 2015 Chapter 8 © Michele Sonnessa, Elena Tànfani and Angela Testi 2015 Chapter 11 © Matteo Morini and Simone Pellegrino 2015 Chapter 12 © Matteo Morini 2015 All rights reserved. No reproduction, copy or transmission of this publication may be made without written permission. No portion of this publication may be reproduced, copied or transmitted save with written permission or in accordance with the provisions of the Copyright, Designs and Patents Act 1988, or under the terms of any licence permitting limited copying issued by the Copyright Licensing Agency, Saffron House, 6–10 Kirby Street, London EC1N 8TS. Any person who does any unauthorized act in relation to this publication may be liable to criminal prosecution and civil claims for damages. The authors have asserted their rights to be identified as the authors of this work in accordance with the Copyright, Designs and Patents Act 1988. First published 2015 by PALGRAVE MACMILLAN Palgrave Macmillan in the UK is an imprint of Macmillan Publishers Limited, registered in England, company number 785998, of Houndmills, Basingstoke, Hampshire RG21 6XS. Palgrave Macmillan in the US is a division of St Martin’s Press LLC, 175 Fifth Avenue, New York, NY 10010. Palgrave Macmillan is the global academic imprint of the above companies and has companies and representatives throughout the world. Palgrave® and Macmillan® are registered trademarks in the United States, the United Kingdom, Europe and other countries. ISBN: 978–1–137–33980–5 This book is printed on paper suitable for recycling and made from fully managed and sustained forest sources. Logging, pulping and manufacturing processes are expected to conform to the environmental regulations of the country of origin. A catalogue record for this book is available from the British Library. A catalog record for this book is available from the Library of Congress.
Contents List of Figures
x
List of Tables
xiv xv
Preface
xvi
About the Authors
Part I 1
2
3
Concepts and Methods
A Few Good Reasons to Favor Agent-based Modeling in Economic Analyses Riccardo Boero 1.1 Integration of theory and data 1.2 Causality and uncertainty 1.3 Heterogeneity and interaction 1.4 Scalability and modularity 1.5 Interdisciplinarity 1.6 Conclusions From Complexity to Agents and Their Models Pietro Terna 2.1 Searching for roots in complexity 2.2 Agent-based models 2.3 Key characteristics of agent-based models 2.4 Weaknesses and perspectives 2.5 Learning in ABMs 2.5.1 Reinforcement learning 2.5.2 Summarizing learning Introducing the Swarm-Like Agent Protocol in Python (SLAPP) Pietro Terna 3.1 Introducing SLAPP and Swarm 3.1.1 A graphical representation of the Swarm protocol
v
3 3 5 6 7 7 8 10 10 12 15 17 20 23 28
31 31 32
vi
Contents
3.2 The Swarm protocol step by step vs the SLAPP implementation 3.2.1 The Swarm-Like Agent Protocol in Python (SLAPP) 3.2.2 The Swarm and SLAPP tutorials 3.3 The SLAPP code, following the tutorial 3.3.1 plainProgrammingBug 3.4 The schedule as a clock opening metaphorical boxes 3.5 A basic example 3.5.1 The agents of the example 3.5.2 Modifications to the SLAPP basis 3.5.3 Creating the agents of the model 3.6 How to use the model 3.6.1 The detailed schedule, built via spreadsheet tables 3.6.2 The basic sequence of the actions of the observer and of the model 3.7 The (commented) output of our example 3.8 Appendix
34 35 36 39 40 41 42 43 43 43 44 44 47 48 51
Part II Applications 4
Studying Human Capital Development via Models of Interaction in School Classes 57 Pietro Terna 4.1 Introduction 57 4.1.1 The analysis and its goals 57 4.2 The structure 58 4.2.1 The collected data and the agents 58 4.2.2 Modifications to the SLAPP basis 59 4.2.3 Creating the agents of the model 60 4.3 How to use the model 62 4.3.1 The detailed schedule, built via spreadsheet tables 62 4.3.2 The basic sequence of the actions of the observer and of the model 64 4.3.3 Examples of use and displayed effects 65 4.4 Appendix 68
5
Production Organization, Recipes, and Networks, with a Few Steps in Network Analysis Pietro Terna 5.1 Introduction
74 74
Contents vii
5.1.1 The analysis and its goals 5.2 Introducing networks and network analysis in ABMs 5.2.1 The recipes as formalism 5.2.2 Interpreting the network results 5.3 The structure 5.3.1 The illustrative examples and the agents 5.3.2 Modifications to the SLAPP basis 5.3.3 Creating the agents of the model 5.4 How to use the model 5.4.1 The detailed schedule, built via spreadsheet tables 5.4.2 The basic sequence of the actions of the observer and of the model 5.5 Advanced examples of use and displayed effects 5.5.1 Adding or removing nodes via the detailed schedule (script) 5.5.2 Adding or removing nodes via the basic sequence of the actions of the model 5.6 Concluding remarks 5.7 Appendix 6
7
Simulating an Interbank Payment System Pietro Terna 6.1 Introduction 6.2 Simulating interbank payments 6.2.1 Building two systems that work in a parallel way 6.2.2 Acting upon time 6.2.3 Choosing a price 6.2.4 Running the simulator 6.3 Possible developments Bottom-Up Approach to Process and Organization Designing of Consulting Firms Michele Sonnessa 7.1 Introduction 7.2 The software and data analysis 7.3 The model 7.4 Scenario analysis 7.5 Conclusions
74 77 77 79 81 81 82 82 83 83 91 92 93 94 95 96 103 103 104 104 108 109 110 113
118 118 120 122 124 129
viii
8
9
10
Contents
Evaluating the Introduction of Deductibles in the Health Insurance System Michele Sonnessa, Elena Tànfani, and Angela Testi 8.1 Deductibles in the health system 8.2 The model 8.2.1 Policymaker 8.2.2 Physician 8.2.3 Patient 8.3 Data collection and function estimation 8.3.1 The price response probability function estimation 8.3.2 The prescription propensity function estimation 8.3.3 The overlook function definition 8.4 Simulation tool 8.5 Output analysis 8.6 Scenario analysis 8.7 Results 8.8 Conclusions Ex-Ante Evaluation of Public Policies: Unintended Results of Broadband Development Riccardo Boero 9.1 Introduction 9.1.1 The policy question 9.1.2 The dilemma of the rural impact of broadband 9.1.3 The research approach 9.2 An input–output agent-based model 9.2.1 The modeling of broadband impacts 9.3 Results 9.4 Conclusions Economic Impacts of Lack of Coordination in the Governance of Public Policies Riccardo Boero 10.1 Introduction 10.2 The challenge of vertical coordination among layers of government 10.3 A case study on public policies in Italian local governments 10.3.1 Research questions and methodology 10.3.2 An agent-based model of the local economy
131 131 132 133 133 134 136 137 137 137 138 139 139 142 144
146 146 147 147 149 149 152 154 158
161 161 162 163 163 164
Contents ix
10.3.3 The coordination dilemma 10.3.4 An agent-based model of coordination Results: dynamics and impacts of vertical coordination Conclusions
169 171
Agent-based Dynamic Optimization of Fiscal Systems Matteo Morini and Simone Pellegrino 11.1 Introduction 11.1.1 Tax system optimization 11.1.2 Case in point: Italy’s personal income tax 11.2 The model 11.2.1 Introducing an equity-efficiency trade-off 11.2.2 Beyond a static micro-simulation 11.2.3 Responsive agents 11.2.4 Social-local effects: interacting agents 11.3 Optimization 11.3.1 The static model, extended 11.3.2 Exploring the solutions space 11.4 The dynamically optimized in-equilibrium scenario 11.5 Appendix 11.5.1 Model and genetic algorithm parameters 11.5.2 Optimal solutions, raw and decoded genomes
184
The Emergence of Cooperation Matteo Morini 12.1 Introduction 12.2 The model 12.2.1 Individual heterogeneous behavior 12.2.2 Natural selection 12.2.3 Interaction 12.3 Experimenting with parameters 12.4 Appendix 12.4.1 Decision tree
198
10.4 10.5 11
12
Index
175 181
184 184 185 186 186 186 187 188 189 189 192 192 195 195 196
198 199 200 201 201 202 206 206 209
List of Figures 2.1
2.2
2.3
2.4 2.5
2.6 3.1 3.2 3.3 3.4 3.5 3.6 4.1 4.2 4.3 4.4 4.5 4.6 4.7
5.1 5.2 5.3
Randomly mixed chameleons: those indicated in the text as green appear here as light gray; the red ones are gray; the blue ones are dark gray The effect of the actions of the green chameleons behaving as runners, while the others are randomly moving; gray levels as in Figure 2.1 The effect of the actions of the green chameleons behaving as runners, while the others act as chasers; gray levels as in Figure 2.1 The space, with the 3 × 3 area of movement; G, R, and B are green, red, and blue chameleons The (green) chameleon in the center of the grid creates the matrix corresponding to its observed world: 1 values identify the presence of red or blue (dangerous) chameleons A scheme of the building model phases The model The observer The probes The schedule mechanism The basic and detailed schedules The sheet containing the base schedule of the basic example The sheet containing the schedule The sheet containing the transitionPhase The sheet containing the checkToObtainAttention operation The basic and detailed schedules The class with the basic schedule, at t = 1 The class with the basic schedule, at t = 2 The sheet containing the conditional checkToObtainAttention operation with the if option, contained in the scheduleIf.xls file A recipe moving from node to node The sheet containing the basic schedule The sheet containing operating groups with unbalanced schedule x
21
22
23 24
24 25 33 33 34 41 45 45 60 61 61 62 66 67
67 80 83 86
List of Figures xi
5.4
The network that emerged from the basic schedule of Section 5.4.1 5.5 The network that emerged from the basic schedule of Section 5.4.1, after pruning edges with weight self.tY : self.yPos=self.tY if abs(dx) > 4 and abs(dy) > 4 : # modify actionGroup “move” via local code execution
Introducing the Swarm-Like Agent Protocol in Python
53
actionGroup=actionDictionary.get(“move”,”none”) # in case, return “none” if actionGroup==“none”: print “warning, action Group not found “+\ “in agent “+ str(self.number) else: # this code show that it is possibile to generate local code # run by the askEachAgentInCollectionAnd ExecLocalCode # structure in mActions.py if int(self.number/2)*2 == self.number: oddEven = “print ‘my number is even’” else: oddEven = “print ‘my number is odd’” setLocalCode(“print ‘agent %s # %d made a big jump’;” % (self.agType,self.number) + oddEven) ( ... ) # returns -1, 0, 1 with equal probability def randomMove(jump): return random.randint(-1, 1)*jump ( ... )
Notes 1. sourceforge.net/projects/jaslibrary/ 2. About the authors. Following Paul Johnson’s addendum at the end of the README file in the main folder of the tutorial package: These tutorials have many excellent insights and helpful pieces of advice for people who are learning to write programs. Many users have wondered who they should thank, and we are not entirely sure! Most authors have chosen to remain anonymous. We know that the original author was Dr Christopher Langton, the founder of the Swarm project at the Santa Fe Institute. 3. The file is on line at the following urls: http://download.savannah.gnu. org/releases/swarm/apps/objc/sdg/swarmapps-objc-2.2–3.tar. gz; http://nongnu.askapache.com/swarm/apps/objc/sdg/swarmappsobjc-2.2–3.tar.gz ; http://eco83.econ.unito.it/terna/swarm/ swarmapps-objc-2.2–3.tar.gz; verified December 2014.
54
Pietro Terna
4. As Paul Johnson added at the end of the README file in the main folder of the tutorial package:The essential form of the tutorial was maintained from 1996 (when the Swarm beta was distributed) through 2004. Several members of the Swarm team (at SFI and later under the auspices of the Swarm Development Group) have make changes to keep the code up-to-date. The first substantial changes in the tutorial correspond with the release of Swarm-2.2. The new components, simpleObserverBug3, and simpleBatchBug[1–3], were installed to facilitate use of Swarm by researchers. These are intended as a replacement for the approach described in simpleExperBug because the approach described there has not proven workable in some (many) contexts. 5. See http://en.wikipedia.org/wiki/Functional_programming. 6. A brief explanation of the trick used to keep an agent in the assigned space while it is moving: We obtain that via the calculation of the remainder (sign %) of the integer division. Envisage an extension in the x direction of 80 positions, numbered from 0 to 79, in a discrete space. What if the agent in 79 moves into 80? (80 + 80)%80 has remainder 0 and the agent jumps to the 0 position, on the left (let us imagine a connected world where going out on the right we reappear on the left, etc.). If the agent is in 0 and moves to −1, (−1 + 80)%80 gives 79 and the agent jumps to position 79 on the right. Note that in Python the 80 addendum is unnecessary, being the integer negative division well defined, always keeping the remainder null or positive, so −1%80 gives 79 (and, consistently, result −1; to verify, do the reverse ). 7. Maybe none, or: (i) one or more, empty; (ii) one or more, with operating contents. 8. Both come from the agTypeFile.txt list or from the agOperatingSets.txt one; in this example we do not have operating sets.
References Downey, A. B. (2012). Think Python: How to Think Like a Computer Scientist. O’Reilly Media, Inc., Sebastopol, CA. http://www.greenteapress.com/ thinkpython/. Elkner, J., Downey, A. B. and Meyers, C. (2013). Learning with Python: Interactive Edition 2.0. How to Think Like a Computer Scientist. Runestone Interactive. http://interactivepython.org/runestone/default/user/ login?_next=/runestone/default/index. Minar, N., Burkhart, R., Langton, C. and Askenazi, M. (1996). The Swarm Simulation System: A Toolkit for Building Multi-agent Simulations. SFI Working Paper, 6(42). http://www.santafe.edu/media/workingpapers/ 96–06–042.pdf. Sargent, T. and Stachurski, J. (2013). Quantitative Economics. http://quantecon.net. Staelin, C. J. (2000). jSIMPLEBUG, A Swarm Tutorial for Java (pdf url, only text; zip url, text and code). http://eco83.econ.unito.it/swarm/materiale/ jtutorial/JavaTutorial.zip.
Part II Applications
4
Studying Human Capital Development via Models of Interaction in School Classes Pietro Terna
4.1 4.1.1
Introduction The analysis and its goals
The chapter presents a case-based study of learning dynamics in class. The Agent based model(ABM) is used to test participant actions and reactions in order to improve student attention and active involvement. This type of application is particularly interesting for economists studying human capital development, for educational sociologists, psychologists and education scientists. The methodology used here is based on AESOP (Agents and Emergencies for Simulating Organizations in Python), which is a layer of SLAPP (Swarm-Like Agent Protocol in Python), as seen in Chapter 3. This is an interesting example of a mixture of real-life observations and agent-based simulation. Long- term observations by specialized scholars in primary school classes were used to build pupils’ behavior in a simulated class, aimed at experimenting with different kinds of teacher behavior . The AESOP/SLAPP software infrastructure can be used to build a very detailed world, specifying both micro-micro behavioral characteristics and sophisticated interaction issues. The field work and part of the coding have been carried out by two young scholars and specialists in educational science, Tiziana Pasta and Sandro Brignone, and their work has also shown that it is possible to code parts of a large shell, like AESOP/SLAPP, without any previous competence in computer science. I am greatly indebted to them, and I hope that they will publish the results of their work very soon. This chapter only refers to the technical part of the school simulation model.1 57
58 Pietro Terna
Some references to research applying simulation to a school environment can be found in : Wilensky and Stroup (1999), Brown (1999), and more recently, Carmichael et al. (2014) and Salgado et al. (2014).
4.2 4.2.1
The structure The collected data and the agents
For several weeks, the two specialists observed the pupils in a few classes in a primary school, recording their behavior, with the full agreement of both parents and teachers. The pupils’ actions were classified according to the different phases of their daily attendance, also taking into account the teachers’ actions in each time interval. The actions have been evaluated from the point of view of the attention given to the educational content provided by the teacher. We have two types of files defining and classifying the agents ( in this case, the pupils): ●
●
agTypeFile.txt lists the files containing the agents of the different types, with the values of their parameters; agOperatingSets.txt lists the files that group the above defined agents, including them in clusters.
The teacher is not explicitly represented in the model, because her actions implicitly appear within the activity scripts. The scripts, describing in detail the actions simulated by the model when it applies the read_script directions (see Figure 4.4 below), are contained in the schedule.xls file, as in Section 5.4.1. A few details relating to this model: • Pupils have been classified into different types (as in agTypeFile. txt), considering their main characteristics. The use of the colors to identify them has the aim of simplifying the graphical representation of the phenomena, and also that of avoiding any over-sensitive interpretation of the classification. The different colors identify students, from those that have positive social and learning competencies (green), to yellow, then red for students with less developed attitudes in those abilities; in the black group, are students trying to be invisible in school. Look at the files with extension .txt in the folder of the project (school).
Studying Human Capital Development ●
●
59
As set out above, the groups of the file agOperatingSets.txt, define other collections of (already existing) pupils. Look again at the files with extension .txt in the folder of the project (school). There are pseudo- groups each containing a single agent, here named xPupil with x in the range 1–21. The reason for having groups containing a single agent is to provide a unique structure for the names we use in schedule tables (see below, Section 5.4.1). – There are special groups, named sa, sb, sc. – Other groups are related to their position within the class ( see Figure 4.5). They are named by row – rxl (row number x, left end), or rxr (the same, right end) or by the sides of the class (leftS and rightS), or, the last row of desks in the class, lRow . – There is also a default automatic group, all, used to interact with all the agents. – Pupils have shapes, introduced via gif files, named pupilGreenF. gif, pupilGreenM.gif for females and males, and so on. – There are also passive agents, the desks, as shown in agTypeFile. txt and (currently) without methods – in the object-oriented perspective – associated with them; they are directly identified by their color (brown) in the constructor part of the agent code. They are not included in the default group all. We are not supposed to ask the desks to do something, but if necessary it would be easy to do that. We had to use them as regular agents, included in the agentList. In this version of the school application, the desks are not included in the list, as in Section 5.3.3.
4.2.2
Modifications to the SLAPP basis
The main modification to the SLAPP basis is the presence – in the school project folder – of a specialized version of the Agent.py file, shown in Section 4.4 (Appendix). The key point is that the agents are created via a class Agent which inherits the structure of a super class, named Turtle, from the Python library turtle, mimicking the basic ideas of the Logo project and, for simulation fluent programmers of NetLogo, StarLogo, and so on (see Chapter 2 about the introduction of ABMs ). The agents inheriting from the Turtle class automatically display their positions and their movements in a graphic window with a shape, a size, and so on.
60
Pietro Terna
4.2.3
Creating the agents of the model
The agents are created by the part of the modelSwarm specialized for the school project. As a general choice, we place this part of the model in a folder with the same name of the project, in a file aptly named mActions.py. def createTheAgent(self,line,num,leftX,rightX,bottomY,topY, agType): #explicitly pass self, here we use a function if len(line.split())==5 and line.split()[1] != ‘brown’: anAgent = Agent(num, self.worldStateList[0], int(line.split()[2]), int(line.split()[3]), leftX,rightX,bottomY,topY,agType= agType) self.agentList.append(anAgent) anAgent.setColorAndGender(line.split()[1],line.split()[4]) elif len(line.split())==4 and line.split()[1] == ‘brown’: anAgent = Agent(num, self.worldStateList[0], int(line.split()[2]), int(line.split()[3]), leftX,rightX,bottomY,topY,agType=ag Type) #not added to agentList anAgent.setColorAndGender(line.split()[1],”“) #brown, no gender, it is a desk else: print “Error in file “+agType+”.txt” exit(1)
The code works as analyzed in the following specifications:
Figure 4.1
The sheet containing the schedule
Studying Human Capital Development
Figure 4.2
The sheet containing the transitionPhase
Figure 4.3
The sheet containing the checkToObtainAttention operation
●
●
61
As ex-ante information, the identifying number of the agent is read outside this function, as the mandatory first element in the lines of any file containing agent descriptions. Also, the content of the agType variable comes from outside, being the name of the agent file currently open. We have two possibilities: _ first case: the function createTheAgent receives a line from one of the files describing the agents of type agType; for example, from greenPupil.txt, the first row contains “1 green -125 75 F”, with five elements when split ; counting from 0, the element in position 1 contains the color that we require to be not brown; these two characteristics identify a pupil; as a consequence of having five items in a line and the color not brown, the fifth position (line.split()[4]) contains the gender of the pupil, and the third and fourth positions (line.split() [2] and line.split()[3]) contain the x and y coordinates used to locate the agent in the map of the class; each agent representing a pupil is added to the agentList;
62 Pietro Terna
Figure 4.4
The basic and detailed schedules
– second case: if the file is desk.txt, a typical line is “101 brown -125 75”, with four elements when split ; again, the element in position 1 contains the color that we now require to be brown, to identify a desk; in the following positions, we have the coordinates; this instance of the agent class is not added to the agentList. As shown above, the desks are not included in the agentList to avoid their responsiveness to the method related to the pupils. Another possible solution would be that of including them in the list, but controlling each method to avoid it acting if, in this case, the color was brown. This second solution allows the possibility of animating the passive agent, e.g., in our case with methods operating only if the agent is brown.
4.3 How to use the model 4.3.1
The detailed schedule, built via spreadsheet tables
First of all, we look at the detailed schedule, that is, the time table with the detailed descriptions of the actions that the agents are doing at each time step. As seen in Chapter 3, the introduction to SLAPP, the file schedule.xls can contain several sheets. The first one must be named schedule, but the other s can have any name; those names will be used
Studying Human Capital Development
63
as macro instructions in any sheet, except within the named sheet itself, to avoid infinite loops. Let us proceed by using examples. In Figure 5.2 we see the first sheet, named schedule. Its contents are: ● ●
in column E, free comments; in column A, the sign # or the word macro or a name identifying a group of agents (the number of the agents in the group can vary from 1 to any value): _ with #, we state that when the clock reaches the time (in units of the conventional internal clock of the model) set in column B, the content of the rows2 from the one below the # sign down to the next #, have to be read and executed; – with macro, we indicate that at a given time SLAPP will activate the set of instructions given in a specific sheet, as in Figure 5.2; there we have the macros transitionPhase, at time 1, and checkToObtainAttention, at time 2; at the correct time, SLAPP will activate the set of instructions reported in the sheets with the same names of the macros; in our case, those of Figures 4.3 and 5.3; – with a name identifying a set of agents3 in column A, we send to the agent(s) the method (as an action to be carried out) in column B in a deterministic way; if there is a number in Column B, this is the probability (expressed upon 1) of execution of the method, in this case reported in column C; * the probability can be interpreted either as the share of the set of agents – recalled in column A – which we ask to do the action, or, which is just the same, as the probability of each individual on the same list being asked to execute the action; * if the number in column B is both less than “0” and an integer (in Figure 4.3, equal to −1), exactly that number (multiplied by −1 to make it positive) of agents is asked to execute the actions; these agents are randomly extracted from the list.
We can, if it is useful, place the time items identified by the # sign in a nonsequential way into each sheet of the spreadsheet, but if we use the same # time place card in the same sheet more than once; only the last is retained. The # sign can be employed in the macro sheets (also repeating a # time place card already existing in another sheet); when the macro is called up, the content of those time blocks is placed in the related time steps, in the proper order. Time loops: we can also manage time loops using a block, as
64
Pietro Terna
# 1 somethingA somethingB
3
will be internally transformed to # 1 somethingA somethingB # 2 somethingA somethingB # 3 somethingA somethingB 4.3.2 The basic sequence of the actions of the observer and of the model As already introduced in Chapter 3, related to the SLAPP structure, the schedule described in the previous section is a detailed schedule related to articulated actions of the agents over time. But there are also the basic schedule sequences, as clarified – for this application – in Figure 4.4. Following the Swarm protocol, as described in Chapter 3, Section 3.1.1, with Figures 3.1 and 3.2, the construction of this family of models is based on two sides: the observer and the model . The observer runs the model (our simulation), looks for the results and moves the clock from one time to the next. The model can reset values (if necessary), send orders to all the agents (if any) and, most important of all, execute the detailed script defining the agent actions in a micro way (Figure 4.4). In the school application, the observerActions.txt file contains the sequence: modelStep ask_all clock (to be repeated as a cycle until the time finishes) where: ●
modelStep orders to the model to make a step, that is, the sequence: reset read_script , contained in modelActions.txt where, in our case, the important part is read_script. If the sequence in modelActions.txt is repeated (one or more times) in the file, all the actions will also be repeated. The repetition does
Studying Human Capital Development
65
not work for the actions activated by read_script, that is, making a step in the schedule. The content of the schedule follows the time indicator set after the sign #, and so only when the command clock of the observer sets the proper value of the time. ●
●
ask_all produces a graphical representation of the attention paid by the pupils and the output of the vector reporting pupil numbers and their attention indexes. clock makes the time move one step ahead.
On the side of the model, with reset read_script , we have: ● ●
reset, here a memo for future use; read_script invoking the content of the schedule.xls file and looking to the # block, if any, related to the current value of the clock,
The basic schedules of the observer, and of the model, have their methods mainly included in the variable parts of the two modules; see the files oActions.py and mActions.py in the specific project folder. Figure 4.4 represents both this set of interactions and the relationships with the detailed sequences shown in the schedule.xls file. 4.3.3
Examples of use and displayed effects
Instead of completing the detailed schedule in the schedule.xls spreadsheet, we can code it directly in the file schedule.txt. Note that if schedule.xls exists in the folder, it is translated in txt form, deleting the previous schedule.txt file. In any case, it is not easy to code directly into the txt file, primarily because of the absence of macro instructions. If neither the xls nor the txt schedule appears in the folder, there is no error, but the read_script step has no effect. There can easily be several spreadsheets with different names in each project folder (school in our case), which can be copied to the operating name schedule.xls. The examples reported in Figures 4.3, 5.2, and 5.3 are related to the content of the file scheduleBasic.xls. The emerging effects are those: ●
in Figure 4.5, related to the first step of the time sequence, so using the methods contained in the transitionPhase macro (Figure 5.3); those methods (sitDownNotWell, and talk) are documented in Section 4.4 (Appendix);
66 ●
Pietro Terna
in Figure 4.6, related to the second step of the time sequence, so using the methods contained in the checkToObtainAttention macro (Figure 4.3); those methods (payAttention, sitDownWell, sitDownNotWell as above, fidget, shake, answerBad, and answerWell) are documented in Section 4.4 (Appendix);
Figures 4.5 and 4.6 show different results in terms of learning (nothing and then a bit), riposted graphically in the first part of the image. We report the same detailed data in a vector that we can write as an output or save in a file. To offer more technical possibilities, let us have also a look at a conditional method, as in Figure 4.7, with the shakeIf_greenPupil method, reported in Section 4.4 (Appendix). The folder school also contains other xls files. In order to use these, we have to copy them as schedule.xls The files are: scheduleEmpty.xls (useful to start a new project), scheduleBasicIf.xls, scheduleIf.xls, scheduleLessBasic.xls, and scheduleAdvanced.xls, as a very brief example of actual application. 15
4
6
Figure 4.5
17 18 20 21 1
2
3
5
8
9
11 12 13 14 16 10 19 15 7
The class with the basic schedule, at t = 1
Studying Human Capital Development
67
15
4
6
Figure 4.6
17 18 20 21 1
2
3
5
8
9
11 12 13 14 16 10 19 15 7
The class with the basic schedule, at t = 2
Figure 4.7 The sheet containing the conditional checkToObtainAttention operation with the if option, contained in the scheduleIf.xls file
68
Pietro Terna
4.4
Appendix
The code related to the agents is as follows (only a few segments are given here): • Prologue (the construction phase): #Agent.py from Tools import * from turtle import * register_shape(“school/pupilBlackF.gif”) register_shape(“school/pupilGreenF.gif”) register_shape(“school/pupilRedF.gif”) register_shape(“school/pupilYellowF.gif”) register_shape(“school/pupilSpecialF.gif”) register_shape(“school/pupilBlackM.gif”) register_shape(“school/pupilGreenM.gif”) register_shape(“school/pupilRedM.gif”) register_shape(“school/pupilYellowM.gif”) register_shape(“school/pupilSpecialM.gif”) register_shape(“desk”,((5,-15),(15,-15),(15,15),(5,15))) class Agent(Turtle): def __init__(self, number, myWorldState, xPos, yPos, lX=-20, rX=19, bY=-20, tY=19, agType=““): Turtle.__init__(self) (…) # the environment self.agOperatingSets=[] self.number = number self.lX = lX self.rX = rX self.bY = bY self.tY = tY self.myWorldState = myWorldState self.agType=agType # the agent self.xPos = xPos self.xPos0=xPos self.yPos = yPos
Studying Human Capital Development
69
self.yPos0=yPos self.deltaAtt=0 print “agent”, self.agType, “#”, self.number, \ “has been created at”, self.xPos, “,”, self.yPos (…) self.lastExecutedMethod=‘‘ def setColorAndGender(self,color,gender): self.color(color) self.gender=gender if gender==“F”: if color==“black” : self.shape(“school/pupilBlackF.gif”) if color==“green” : self.shape(“school/pupilGreenF.gif”) if color==“red” : self.shape(“school/pupilRedF.gif”) if color==“yellow” : self.shape(“school/pupilYellowF.gif”) if color==“violet” : self.shape(“school/pupilSpecialF.gif”) if gender==“M”: if color==“black” : self.shape(“school/pupilBlackM.gif”) if color==“green” : self.shape(“school/pupilGreenM.gif”) if color==“red” : self.shape(“school/pupilRedM.gif”) if color==“yellow” : self.shape(“school/pupilYellowM.gif”) if color==“violet” : self.shape(“school/pupilSpecialM.gif”) if color==“brown” : self.shape(“desk”)
• Methods: (…) # fidgeting def fidget(self,**d): self.lastExecutedMethod=self.fidget print “I’m %s agent %d: “ % (self.agType,self.number), print “I’m fidgeting” add=random.random()*0.3+0.7 self.nMethodsAttention+=1 self.tickAttention = (self.tickAttention*(self.nMethods Attention-1) + add) / self.nMethods Attention # shaking def shake(self,**d): self.lastExecutedMethod=self.shake
70 Pietro Terna print “I’m %s agent %d: “ % (self.agType,self.number), print “I’m shaking” if self.agType == “greenPupil”: add=random.random()*0.3+0.6 else: add=random.random()*0.4+0.4 self.nMethodsAttention+=1 self.tickAttention = (self.tickAttention*(self.nMethods Attention-1) + add) / self.nMethods Attention self.xPos+=random.random()*20–10 self.setx(self.xPos) self.yPos+=random.random()*20–10 self.sety(self.yPos) self.write(“Shaking”, font=(“Arial”, 16)) # turtle action (…) # paying attention def payAttention(self,**d): self.lastExecutedMethod=self.payAttention print “I’m %s agent %d: “ % (self.agType,self.number), print “I’m paying attention” add=1.0 self.nMethodsAttention+=1 self.tickAttention = (self.tickAttention*(self.nMethods Attention-1) + add) / self.nMethods Attention (…) # sitting down not well def sitDownNotWell(self,**d): self.lastExecutedMethod=self.sitDownNotWell print “I’m %s agent %d: “ % (self.agType,self.number), print “I’m sitting down not well” # not relevant for attention self.xPos=self.xPos0+random.random()*20–10 self.setx(self.xPos) self.yPos=self.yPos0+random.random()*20–10 self.sety(self.yPos)
Studying Human Capital Development
71
# sitting down well def sitDownWell(self,**d): self.lastExecutedMethod=self.sitDownWell print “I’m %s agent %d: “ % (self.agType,self.number), print “I’m sitting down well” # not relevant for attention self.xPos=self.xPos0 self.setx(self.xPos) self.yPos=self.yPos0 self.sety(self.yPos) (…) # talking def talk(self,**d): self.lastExecutedMethod=self.talk print “I’m %s agent %d: “ % (self.agType,self.number), print “I’m talking” add=0.0 self.nMethodsAttention+=1 self.tickAttention = (self.tickAttention*(self.nMethods Attention-1) + add) / self.nMethods Attention self.write(“blah blah”, font=(“Arial”, 14)) # turtle action (…) # answering (well) def answerWell(self,**d): self.lastExecutedMethod=self.answerWell print “I’m %s agent %d: “ % (self.agType,self.number), print “answering well” add=1.0 self.nMethodsAttention+=1 self.tickAttention = (self.tickAttention*(self.nMethods Attention-1) + add) / self.nMethods Attention self.write(“answ ok”, font=(“Arial”, 14)) # turtle answ # answering (bad) def answerBad(self,**d):
72 Pietro Terna self.lastExecutedMethod=self.answerBad print “I’m %s agent %d: “ % (self.agType,self.number), print “answering bad” add=1.0 self.nMethodsAttention+=1 self.tickAttention = (self.tickAttention*(self.nMethods Attention-1) + add) / self.nMethods Attention self.write(“answ gulp”, font=(“Arial”, 14)) # turtle answ (…) # conditional (maybe mirroring) actions # shake if def shakeIf_greenPupil(self,**d): self.lastExecutedMethod=self.shakeIf_greenPupil count=0 for a in self.agentList: #print a.number, a.getLastExecutedMethod(), a.containers found=str(a.getLastExecutedMethod()).find(‘shake’) #print found # -1 means ‘not found’ if found > -1 and ‘greenPupil’ in a.containers\ and a.number != self.number: count+=1 #print “*** “,count if count>0: self.shake() (…)
Notes 1. Special thanks to two of my colleagues, Rocco Quaglia and Renato Grimaldi, for their scientific guidance in the psychological and educational perspectives; and many thanks also to Aldo Milano, who suggested this type of simulation experiment, and offered the full cooperation of the school he was managing when we worked on the project. 2. Maybe none, or: (i) one or more, empty; (ii) one or more, with operating contents. 3. Both from the agTypeFile.txt list or from the agOperatingSets.txt one.
References Brown, A. H. (1999). Simulated Classrooms and Artificial Students: The Potential Effects of New Technologies on Teacher Education. Journal of Research on Computing in Education, 32(2), pp. 307–318.
Studying Human Capital Development
73
Carmichael, T., Hadzikadic, M., Blink, M. J. and Stamper, J. C. (2014). A Multilevel Complex Adaptive System Approach for Modeling of Schools. In Intelligent Tutoring Systems. Springer, Heidelberg, pp. 623–624. Salgado, M., Marchione, E. and Gilbert, N. (2014). Analysing Differential School Effectiveness Through Multilevel and Agent- based Modelling. Journal of Artificial Societies and Social Simulation, 17(4), p. 3. http://jasss.soc.surrey.ac.uk/17/4/3.html. Wilensky, U. and Stroup, W. (1999). Learning through Participatory Simulations: Network-based Design for Systems Learning in Classrooms. In Proceedings of the 1999 Conference on Computer Support for Collaborative Learning. International Society of the Learning Sciences, p. 80.
5
Production Organization, Recipes, and Networks, with a Few Steps in Network Analysis Pietro Terna
5.1 5.1.1
Introduction The analysis and its goals
The chapter, of particular interest to industrial economists, managers, and business consultants, and also to policy-makers, is about the importance of networks and their links with simulation. The methodology: within production firms or other kinds of organization and in government, we have workers/employees. At any level, they use tools of various types to manufacture products or provide services. Workers/employees and tools, goods and units of services can all be represented within a simulation model as agents, at any level of detail. We can run the virtual enterprises or organizations like real ones, modifying parts of them and looking for the effects. An important field for the application of this way of interpreting reality is health care systems. Finally, learning processes to achieve specific goals, using trial and error as in Chapter 2, can be introduced. In our virtual world, we can also imagine applying techniques from the world of BPM.1 We do not implement this step here, but it can be an interesting way of analyzing our creation and to improve them, in the perspective of shaping reality through our artifacts. As an example of analysis in this perspective, see Küster et al. (2014). The role of artifacts We repeat a short digression on both the role of the artifact and the search of its roots into the “material models” of cybernetics studies. As in Chapter 2, Rosenblueth and Wiener (1945, p. 317) state: 74
Production Organization, Recipes, and Networks
75
A material model is the representation of a complex system by a system which is assumed simpler and which is also assumed to have some properties similar to those selected for study in the original complex system. (…) Material models are useful in the following cases. a) They may assist the scientist in replacing a phenomenon in an unfamiliar field by one in a field in which he is more at home. (…) b) A material model may enable the carrying out of experiments under more favorable conditions than would be available in the original system. This is exactly what we are doing here. We know also that in our applications complexity lurks just around the corner,2 and so from this perspective the use of robust simulation tools helps both understanding and deciding. Why this kind of model? Referring to Terna (2010), our models can be used to theoretically analyze would be situations in enterprises or organizations and their interaction. There are at least two purposes, and we try to analyze them: ●
●
To simulate interactions between people within organizations, to study: (i) how people behave in organizations by building experiments using the simulator; (ii) to teach people about the consequences of their decisions within an organization. In the second case, an artificial agent has the role of an avatar, allowing actual people to act and interact within a simulated reality that replicates the complexity of their real activity framework.3 The same models can be employed to understand enterprise or organization optimization, through soft computing tools, such as genetic algorithms and classifier systems, as well as through what-if analysis. In a simulation framework, genetic algorithms and classifier systems obtain the fitness evaluations – of either the evolved genotype or the evolved rules – as outcomes of the running simulation.
The tool that we introduce to help us understand what the enterprise is, via an agent-based simulation framework, can reproduce the enterprise context in a detailed way. Why is this problem so important? Gibbons (2000) reminds us that: For two hundred years, the basic economic model of a firm was a black box: labor and physical inputs went in one end; output came out the
76 Pietro Terna
other, at minimum cost and maximum profit. Most economists paid little attention to the internal structure and functioning of firms or other organizations. During the 1980s, however, the black box began to be opened: economists (especially those in business schools) began to study incentives in organizations, often concluding that rational, self-interested organization members might well produce inefficient, informal, and institutionalized organizational behaviors. Clarkson and Simon (1960, p. 924) also criticize classic economic theories regarding decision- making within firms: With great ingenuity, we axiomatize utility, as a cardinal quantity; we represent risks by probability distributions. Having done this, we are left with the question of whether we have constructed a theory of how economic man makes his decision, or instead a theory of how he would make his decision if he could reason only in terms of numbers and had no qualitative or verbal concepts. From the point of view of the decision-making process in organizations (Simon, 1997), the situation becomes increasingly complicated, as in this realm prices do not operate at all, and classical economics has very poor explanatory capabilities. Other fields of science also fail to offer a strong framework to allow us to understand, explain and modify organization activities. As Simon (1997) notes in his introduction: Administrative Behavior has served me as a useful and reliable port of embarkation for voyages of discovery into human decision making; the relation of organization structure to decision making, the formalized decision making of operation research and management science, and in more recent years, the thinking and problem solving activities of individual human beings. Starting from administrative decision-making, Simon introduced the key idea of bounded rationality in human behavior. He then extended this insight to political science, economics, organization theory, psychology and artificial intelligence. Following Simon, we can point out that organizations make it possible to formulate decisions because they reduce the set of possible choices people are considering. In other words, they introduce an additional set of bounds on possible choices.
Production Organization, Recipes, and Networks
77
If we understand that organizations must act in the context of those decision-making processes by which sets of possible choices are built, we can improve them. We have to remember that the effects that arise from decision- making in actual organizations are nonlinear. Because of this nonlinearity, consequences frequently seem to be explainable only in terms of complexity.
5.2 Introducing networks and network analysis in ABMs As pointed out in Fontana and Terna (2015), while models using Agent based model(ABM) techniques or Network Analysis (NA) are more and more diffused, the attempts to apply them jointly are not very frequent (De Caux et al., 2014; Hamill and Gilbert, 2009; Edmonds and Chattoe, 2005; Kirman and Vriend, 2001; Weisbuch et al., 2000; Heijnen et al., 2014). Let us underline that we do not make reference here to ABM models where agents are linked by a network; we refer strictly to the use of network analysis to elaborate the emerging effects of the behavior of the agents. The combination of the two methods can enormously improve the potential of complexity-based policies. The technique introduced here can represent an innovative perspective in that direction. The perspective is double: we consider agent systems where the individuals create, modify and hold relationships among them, participating in one or more networks. Those networks are mainly interesting when generated directly by the agents while acting. Finally, we analyze the network emerging in our ABMs, with NA techniques. About NA, we have huge documentation in books and papers; from our point of observation (NA in ABMs), the documentation accompanying the NetworkX library4 is a very useful base. Together with NetworkX, here we use the graphic library Matplotlib.5 5.2.1
The recipes as formalism
We propose a simple basic structure where events, scheduled over time, call upon agents to behave, to modify their context, and to create new link structures among them. We organize the events as collections of small acts and steps. The metaphor is that of a recipe, that is, a set of directions with a list of ingredients for making or preparing something, especially food (as defined in the American Heritage Dictionary). Technically, recipes are sequences of numeric or alphanumeric codes, reported in vectors, and they move from one agent to another, determining the events and generating the edges of the emerging networks.6
78
Pietro Terna
We code the recipes as strings of numbers – their components. Each number (or, if we want, each label), is related to an act or to a routine of the modeled action. For instance: [3 1 7 6] - execute - execute -
means: next step (3), then next step (1), then ...
At time t = 0 the next step is the first one. We can code recipes of any length, also containing subparts with specific structural characteristics, such as: [1 4 (3 6 5) 8] where the instructions in parenthesis run in a parallel way; or [7 4 {10} 9 2] where the part in curly brackets runs when production succeeds in putting together a batch of different recipes with this same next step (e.g., a transportation activity with a minimum economic quantity). Let us consider a productive world perspective. According to the demand (as orders) expressed by the market, the recipes report the steps necessary to produce the expected goods. According to the sequence of steps of its recipe, each good under preparation will move from one production unit to the next, and so on. We can also imagine adding problem-solving skills to each production unit/firm or to each single recipe/order. In Figure 5.1 we have a simple sequence to better explain the recipes/ production units (factories, in the economic interpretation; hospitals, in sanitary care field, etc.). In the figure, we describe several successive actions. As a default, each action requires one tick of the time for its execution, but we can also easily adapt it, to provide more actions in the same tick. In this case, modifying the sequences in the detailed schedule of the model (see below): ●
●
●
We start at location a1 (a for action), where the order – containing the recipe [3, 2, 4] – moves to a production unit able to execute its first step ( type 3). We are then at location a2 : the recipe now contains the residual sequence [2, 4]. In location a3, we have a dilemma: how to continue? With the first, production unit, or the second ? They both can manage the
Production Organization, Recipes, and Networks
●
79
previous second step, which is now the first one, related to type 2 of activity. Suppose that we have chosen the second unit at location a3. How did we make that choice? The basic way is to choose in a random way, but the SLAPP/production code easily allows us to adopt more sophisticated solutions. Let us consider the file (class) verb “Agent.py” in the folder production, method searchForSector. If following the sequence of the steps of a recipe, more than a unique solution is possible (i.e., two or more factories able to take the new incoming step), what do we do? The current implementation adopts a random choice of the unit that will be continuing the production, but further developments are possible. In the code we read: # future development: here res[0] simply contain a randomly # chosen unit # (if in res we have more than a unique possibility) # it is possible to put here intelligence (as the effect of the) # action of the recipe, searching for data such as production # costs of the factories, their waiting lists, their quality # standards, their owners, etc.
• Finally, in the steps related to locations a4 and a5, we see the last step executed and finally the recipe empty, at the end of the process. Having been created by an action like that in location a2, and so on, an edge has weight 1. As more and more recipes pass through the same edge, its weight increases. Another example: a person (an active agent, in this case the subject launching the action) is supposed to suffer from a few healthcare problems, represented by recipes above. Those recipes/events will be activated at different moments of this person’s lifetime. In this case, the steps of the recipe act within the healthcare system (a medical examination, a period in a hospital, surgery, etc.). 5.2.2
Interpreting the network results
It is worth noting that in the cases of both production and the healthcare system, a network is coming up in addition to the economic/social relevance of the emergence detected by the traditional ABM. In the first example, the order/product/ is moving from one production unit
80
Pietro Terna
A recipe [3, 2, 4]
A factory able in doing steps of type 3
a1
a2 [2, 4] A factory able in doing steps of type 2
a3
A factory able in doing steps of type 2
[4] a4
a5
A factory able in doing steps of type 4
a6
Figure 5.1
[]
A recipe moving from node to node
to another, creating/exploring/using a network among the production units. In the second example, the patient acting within the healthcare system uses links among doctors, hospitals, sanitary tests, and so on. but also creates them, with unpredictable effects. Are the subjects, the production units/factories, aware of the network, whether actual or emerging ? This issue is related to the analyses that the experimenter is doing with this kind of model. What we strongly underline once again is that we are not asking to the agent to build a network, but we observe that emergent effect. Finally, let us also consider the possibility that the agents can take into consideration the network measures related to themselves. For example, consider two indicators: ●
Betweenness centrality (BC):7 the BC of a node v is the sum of the fraction of all-pairs shortest paths that pass through v. An agent (node of the graph of the network) that is aware of a high level of BC can decide to increase its activity capacity. The possibilities are: to increase the factory machine tools or the hospital beds, or to double itself, and so on. A central planner that observes the network can do the same.
Production Organization, Recipes, and Networks ●
81
Closeness centrality (CC):8 the CC at a node is 1/averageDistance to all other nodes. An agent (node of the graph of the network) that is aware of a high level of CC knows its capability, as an example, of directly spreading decisions, information, opinions, and so on.
To improve interpretation of the result we must also pay more attention to how agents decide, as in Balke and Gilbert (2014) and focus on learning in agents, as in Chapter 2. The importance of learning processes in modeling is clearly stated in the recent Greenwald and Stiglitz (2014) seminal book.
5.3
The structure
5.3.1
The illustrative examples and the agents
We are using the data below simply as illustration. There are two files containing the different types of agents and the values of their parameters. Those files or other similar ones are listed in the file agTypeFile.txt. That file, in our case, contains only the record “recipes factories”. • factories.txt lists the production units (factories, if we are producing goods); the form, and the example, is: 1001 1002 1003 1004 1005 1006
20 40 80 30 60 80
10 90 30 30 10 70
1 2 2 3 4 5
The factories are identified by a number (here conventionally greater than 1,000), an x coordinate and a y coordinate, the productive sector (i.e., the recipe step that the unit can take). • recipes.txt lists the recipes, with their unique identifying number. In the example there are 20 basic recipes; the file contains: 1 2 3 (…) being the actual content of the recipes generated at run time.
82 Pietro Terna
5.3.2
Modifications to the SLAPP basis
The main modification to the SLAPP basis is the presence – in project folder production – of a specialized version of the Agent.py file, given in part here in Section 5.7 (Appendix). While in Chapter 4 the class Agent inherits the structure of the super class, Turtle, here there is no inheritance. The display part of the model is obtained directly by the visualization of the graph of the network emerging from the action of the agent, defining the position of the nodes. We can if necessary add new nodes or remove existing ones. It is also possible to move a node, both to report a spatial action of the node or to modify the design of the display.9 5.3.3
Creating the agents of the model
The agents are created by the part of the modelSwarm specialized for the production project. As a general choice, we place this part of the model in a folder named the same as the project, in a file aptly named mActions.py. def createTheAgent(self,line,num,leftX,rightX,bottomY, topY,agType): #explicitly pass self, here we use a function # recipes if len(line.split())==1: anAgent = Agent(num, self.worldState List[0], agType=agType,\ modelAddress=self) self.agentList.append(anAgent) # factories elif len(line.split())==4: anAgent = Agent(num, self.worldState List[0], int(line.split()[1]), int(line.split()[2]), agType=agType, sector=int(line.split()[3]),\ modelAddress=self) self.agentList.append(anAgent)
Production Organization, Recipes, and Networks
83
else: print “Error in file “+agType+”.txt” os.sys.exit(1) This code works as follows: ●
●
As an ex-ante information, the identifying number of the agent is read outside this function, as the mandatory first element in the lines of any file containing agent descriptions. Also, the content of the agType variable comes from outside, being the name of the agent file currently open. There are two possibilities. – First case: the function createTheAgent receives a line of the files describing the agents of type recipes from the file recipes.txt, as stated above . This file does not contain attributes for the recipes, created here as empty containers. Each agent representing a recipe is added to the agentList. –
Second case: the same function receives a line of the files describing the agents of type factories from the file factories.txt, as stated above . For example, the first row contains “1001 20 10 1”, with four elements when split . Counting from 0, the element in position 1 contains (line.split()[1]), the x position of the agent in the space of the world.10 The element in position 2 contains (line.split()[2]) the y position. Finally, the element in position 3 contains (line.split()[3]) the sector, as the capability of executing a given step of a recipe. Each agent representing a factory is added to the agentList.
5.4 How to use the model 5.4.1
The detailed schedule, built via spreadsheet tables
First of all, we look at the detailed schedule, that is the timetable where the actions that the agents are doing in each time step are described
Figure 5.2
The sheet containing the basic schedule
84 Pietro Terna
in detail. As seen in Chapter 3, the introduction to SLAPP, the file schedule.xls can contain several sheets. The first must have the name schedule. The other s can have any name; those names will be used as macro instructions in any sheet except the named sheet itself, to avoid infinite loops. The basic case In Figure 5.2 we see the first sheet (and a unique one, in this case), named schedule. Following the explanation in Chapter 4, dedicated to the school example, its contents are as follows: • In column A, there is the sign # or the word macro or a name identifying a group of agents (the number of the agents in the group can vary from 1 to any value). With #, we state that when the clock reaches the time (in units of the conventional internal clock of the model) set in column B, the content of the rows below the # sign down to the next # must be read and executed. H ere we use a time loop as described in the previous chapter, so the sequence # 1 20 recipes setRecipeContent recipes searchForSector factories factories will be internally transformed to # 1 recipes setRecipeContent recipes searchForSector factories factories (…) # 20 recipes setRecipeContent recipes searchForSector factories factories ●
The contents: _ setRecipeContent sets up all the empty recipes – either just created or already finished, so before case a1 or after case a6 in Figure 1 – to have a sequence of steps to be carried out, like those in a1;
Production Organization, Recipes, and Networks
85
_ searchForSector orders all the not locked recipes to move to the next step, maybe making choices like those detailed above, in Figure 5.1; a locked recipe is waiting to find a factory to execute its next step, as in Figure 5.1; the locking conditions are: * the recipe is temporarily kept in a production waiting list in a factory; * a recipe is stuck at the starting point or in a factory because it cannot find a unit that can take its next step; looking at the list of the units in factories.txt above, the sectors are from 1 to 5, with two units of type/sector 2; the default recipe generation, as defined in the file parameters. py in the folder production reports the value six as max sector indicator and recipe length of max ten steps, so we will never have finished recipes; the simulation process can add a new node/factory with the missing sector as could happen in the real world; _ produce orders to the factories (each of them, here) to accomplish wkhat is required by the first of its waiting recipes, if any, on a FIFO (first in first out) basis; it would be easy to program units with greater production capabilities or, on seeing a bottleneck developing, to add new units. The operating groups and the unbalanced case It is also possible to create operating groups via the file agOperatingSets.txt file, as in the school example. To try this, in the production folder rename the file agOperatingSets.tx0 to agOperatingSets. txt. The file contains the name of two operating groups: one is the two factories of sector 2 and of the other is the unique factory of sector 5; the two operating sets. To ensure clarity, they are stated here. sector2.txt containing 1002 1003 and sector5.txt containing 1006
86
Pietro Terna
Figure 5.3
The sheet containing operating groups with unbalanced schedule
The schedule, now contained in the file scheduleUnbalancedRepeated.xls, is shown in Figure 5.3. It describes a set of repeated sequences, as above, for clock ticks from 1 to 20, but with an unbalanced construction. ● ●
●
setRecipeContent and searchForSector work as above; produce, in row four, orders 20% of the factories (or, which is just the same, each factory with probability 0.2) to accomplish what is required by the first of its waiting recipes; produce in rows 5 and 6 sends the same order to the factories contained in the operating groups of column B, that is, in the first case all the factories in sector 2, and in the second case, the single one in sector 5 .
Note that with the last action we also show how it is possible to interact with a single specific agent: making it a single element in a given operating group. About the characteristics of the agent, we can summarize that we have two types of files defining and classifying our agents (here, either recipes or factories ): ●
●
agTypeFile.txt lists the files containing the agents of the different types, with the values of their parameters, if any; agOperatingSets.txt lists the files that group the agents defined above, showing them in clusters.
Results of the model for the basic case The model version introduced as basic – described in Section 5.4.1 – produces, at the end of 20 cycles or clock ticks, the network that emerged, reported in Figure 5.4. It easy to see the all the nodes (factories) are highly interconnected. The values within round parentheses close to the nodes are the number- locked recipes, waiting for production in the unit or definitively locked (see Section 5.4.1).
87
Production Organization, Recipes, and Networks 100 1002 (1) autolink w. 1 w.s 3
80
and
1
1006 (1) w. 2
1004 (2) autolink w. 2
w.s
3a
nd
an
d2
2
w. 2
and
3
w.s 1
and
40
2 w.s
w.s 3 and 2
1 w.s
2
60
w.s 1 and 1
1003 (1) autolink w. 2
1 an
d
w.s 1
w. s
6
20
andw.s 1 2
and 2
1005 (1)
w.s 2 and 3
1001 (1) autolink w. 3
0 10 Figure 5.4
20
30
40
50
60
70
80
90
The network that emerged from the basic schedule of Section 5.4.1
The betweenness results, defined above, are: 1001 1002 1003 1004 1005 1006
3.0 1.83 1.0 3.83 1.5 0.0
These outcomes are raw, unnormalized values. The normalization factor, for a directed graph (our case) is 1/((n − 1) (n − 2)). Having n as the number of the nodes gives us 0.05 in our network. The 1001 values 3.0 would be 0.15, and so on, with the possibility of comparing different networks. To obtain normalized values, change these instructions: graphicDisplayGlobalVarAndFunctions.py of folder production: common.btwn=nx.betweenness_centrality(common.g,normalized= False, weight=‘weight’) and common.clsn = nx.closeness_centrality(common.g, normalized= False)
88 Pietro Terna
by substituting True for False. The nodes 1001 and 1004 are the most relevant in the network, and can be interpreted as bottlenecks. The closeness results, defined as above, are: 1001 1002 1003 1004 1005 1006
1.0 0.71 0.83 0.83 0.71 1.0
Nodes 1001 and 1006 are mostly directly connected to the other nodes, with direct interaction. The next step of interest is to prune the edges of the network, cutting those with weight of less than a given threshold. This operation is possible via the user interaction with the model. Remember that as more and more recipes pass through the same edge its weight increases. Eliminating (pruning) the edges with weight Business Area -Accounting:int -Consulting:int
Consultant -skill Level:int -hourly Cost:float
Model class diagram
0..*
Process and Organization Designing of Consulting Firms
123
The firm has a group of customers which may require both their recurrent activities to be regulated by a yearly contract, and special consultancy tasks when some unexpected needs arise (i.e., joint ventures, stock operations, and legal agreements). Each customer is characterized by a complexity level which determines the types and complexity of the files it generates. The file represents a single task required by the customer of the consulting company, and it can be a recurrent or a one-off request. Depending on the level of customer complexity, the business strategist assigns a specific consultant to the customer. The correct match is critical, because a wrong assignment can cause the consultant to ask their more skilled colleagues for help, interrupting the flow and creating delays. At each simulation time step each customer can generate a new file to be processed, and each consultant processes a file from his or her queue. This file is submitted to the usual consultant, in the case of an accounting file, or it is routed by the business strategist to the most suitable consultant, according to the current assignment algorithm, in case of a consulting file. The process is clearly explained by the diagram in Figure 7.3.
Kliosim Activity diagram
Initial node
Final node
File Creation
Process file
Enough skill Routing
File queue Check
Not enough skill or too long queue Figure 7.3
File process activity diagram
124
Michele Sonnessa
The file can be processed only if the level of complexity is less than the skill level of the employee. In two particular scenarios the consultant may ask the firm to reassign the task to another colleague: ● ●
when his or her level of skill is not adequate to complete the task; when his or her queue is longer than 10 files to be processed.
In case of reassignment the business manager can use the assignment strategy defined as simulation parameter and which corresponds to a given scenario. For each step the consultant sums the cost of the hours needed to process the file, even if it is reassigned. Therefore each file reassignment turns into cost increase for the company. The model is then able to measure the overall cost and time spent on completing each file.
7.4
Scenario analysis
In order to determine the best approach in managing the consultant-tocustomer assignment both for long-term assignments and for unforeseen consulting requests assigned dynamically, we defined three possible scenarios. The first scenario, defined as random, assigns customers randomly to consultants. This kind of scenario is tested with the aim of reproducing a basic situation. It is not necessarily comparable with the existing empirical situation, since the assignment is actually made on a subjective base, but with the aim of reducing bottlenecks. The skill-based scenario introduces a key measure for both files and consultants. Each file has an intrinsic level of complexity that is a proxy of the individual customer’s complexity. It is not directly observable from data but through the ex-post analysis upon data. It can be derived as a measure of complexity for each customer, and is given by a combination of measures such as the number of employees, the business sector, and the past number of accounting activities provided to the customer. The knowledge level for each consultant can also be derived from his/ her salary, years of experience and the number of times they have been asked for help by their colleagues in the past. For each customer, a level of complexity is assigned, and for each consultant a correspondent skill level is determined. On the basis of these two measures the simulation model assigns files to employees.
Process and Organization Designing of Consulting Firms
125
Since we identified another element of mismatching in file assignment, that is, the number of active files a consultant is working on, the third scenario is introduced (i.e., the availability scenario). It is based on the skill-based scenario but from the possible target consultants for a given file, it chooses the one with the smallest queue of files to be processed. The model was executed with these three scenarios, and some relevant measurements were collected: ●
●
● ●
●
●
The total cost for the files accomplished, calculated as a sum of hourly cost of each consultant worked on the file. The total work time, representing a measure of time the customer had to wait. The number of files completed in the same period. The number of file reassignments due to overload or lack of skill in a consultant. The number of pending files, un completed at the end of the simulation period. The average cost of each completed file.
Table 7.1 compares the outcomes. It is interesting to notice how the use of the skill-based scenario does not perform much better than a totally random assignment. This result can be explained by considering the process a queue system, even if working in a particular fashion. By taking into account only the skill matching between a file and a consultant, we ignore the problem of work balancing. The most skilled employees become the busiest, causing a delay in file processing. The choice of not only the most skilled but also the best paid consultant to carry out the activity causes a dramatic cost increase; the firm can produce more (3,869 completed files, compared with the 1,776 in the random scenario), but at higher cost (162 per file instead of 118 in the random scenario). A more intelligent strategy, combining skill matching with a work load analysis, performs better. Indeed, the availability scenario is able Table 7.1
Scenario outcomes comparison
Strategy Random Skill-based Availability
Total cost
Work time
211,317 6,653 629,143 14,228 277,273 2,882
Files Reassignments Pending Avg file completed files cost 1,776 3,869 2,751
16,174 8,443 1,095
11,446 9,304 10,231
118.984 162.611 100.789
Pipeline
0
Figure 7.4
100 90 80 70 60 50 40 30 20 10 0
Work
Reassign
Pipeline
50 45 40 35 30 25 20 15 10 5 0
Simulation outcomes comparison
Files
50 100 150 200 250 300 350 Simulation time
Random scenario
0 Files
Work
Reassign
50 100 150 200 250 300 350 Simulation time
Skill-based scenario
Pipeline 0
1
2
4 3
5
6
8 7
9
0
Files
Work
Reassign
50 100 150 200 250 300 350 Simulation time
Availability scenario
Process and Organization Designing of Consulting Firms
127
to dramatically reduce reassignments, providing an acceptable file throughput (better than the skill-based scenario), at smaller unit price (100 per file). Figure 7.4 graphically compares the effects of the different scenarios. The random scenario is characterized by the progressive increase in the reassignments, creating inefficiency in the system and causing the throughput number of files to decrease progressively. The same effect can also be observed in the skill-based scenario, but in this case the number of reassignments is only due to work overload and so is reduced. The graphical analysis confirms what we observed in the tabular results, that is the availability scenario performs much better; it keeps the system in equilibrium and dramatically reduces the reassignments. In Figures 7.5–7.7 an interesting drill-down analysis is provided. The consultants (on the x-axis) are ordered by their level of skill, and the numbers of times they ask colleagues for help and give help to them are shown. The first figure shows a strong correlation between the level of skill and the probability of asking for help, revealing that the main reason for reassignments is due to lack of skill. In contrast, the numbers of help given are equally distributed, due to the randomness of the assignment algorithm. Figure 7.6 shows the opposite situation; the number of help requests received is concentrated in the high-skill consultant group. This clearly 180 160 140 120 100 80 60 40 20 0 Consultants Asked help Figure 7.5
Given help
Inappropriateness analysis for random scenario
128 Michele Sonnessa
proves that the reassignments are mainly due to increases in queues. Due to the assignment algorithm in this case, the provision of help is concentrated on the highest skill group. 400 350 300 250 200 150 100 50 0 Consultants Asked help Figure 7.6
Given help
Inappropriateness analysis for skill-based scenario
400 350 300 250 200 150 100 50 0 Consultants Asked help Figure 7.7
Given help
Inappropriateness analysis for availability scenario
Process and Organization Designing of Consulting Firms
129
The effects of the availability scenario (Figure 7.7) are more difficult to interpret. Certain consultants provide help with no correlation with the skill level and the same is for the help provision, even if it is only present for skilled consultants. Surprisingly this situation is the most similar to what we observed in the empirical data (in Figure 7.1). It is to be supposed that it does not happen for the same reason, but a more uniform distribution can definitely be observed. It is important to highlight that the ordering of the consultant on the x-axis is made on the hourly cost for Figure 7.1 while we used the skill for simulated output. A direct correlation between wages and skill is not always certain in reallife contexts.
7.5
Conclusions
Applications of the optimization modeling systems for the integrated process management in consulting industry discussed in this chapter are very promising. In consulting companies, the ambitious target to implement Enterprise resource planning (ERP) systems and other transactional systems seems to be the key factor to give the companies the tool to make significant improvements (Shapiro et al., 1998). It is not surprising, therefore, that most companies have not seriously begun initiatives for moving up to develop and use optimization modeling systems to improve themselves. This resistance is not surprising, since the repetitive use of an optimization modeling system requires considerable business process changes as well as the relevant budget to be allocated to this particular task. Moreover, tactical applications require the development of permanent best practices, which are not easy to understand and apply. An important issue that merits further investigation, which is closely related to those discussed above, is the extent and sustainability of competitive advantage that a firm can obtain as a result of process optimization. The academic community has suggested that IT innovations are necessary, but not sufficient, for achieving competitive advantage (Mata et al., 1995; Powell et al., 1997). Such innovations must be combined with complementary organizational and business initiatives if a competitive advantage is to be achieved. This work represents an interesting experiment in investigating the techniques to improve the management of knowledge-based companies. It clearly shows how the unavoidable prerequisite for the approach
130 Michele Sonnessa
to organization redesign is an investment in information systems and software to help in data collection and activity measurement.
Note 1. Klio is a customer relationship management program developed by Zero11 (http://www.myklio.com/).
References Mata, F. J., Fuerst, W. L. and Barney, J. B. (1995). Information Technology and Sustained Competitive Advantage: A Resource-based Analysis. MIS Quarterly, 19(4), p. 487. Powell T. C. and Dent-Metcallef, A. (1997). Information Technology as Competitive Advantage: The Role of Human, Business and Technology Resources. Strategic Management Journal, 18, pp. 375–405. Ross, A. (2010). Business Process Re-engineering in Law Firms. Codexx whitepaper. http://www.slideshare.net/the_laughing_mole/businessprocess-re-engineering-in-law-firms-2010. Shapiro, J. F. (1998). Bottom-Up vs. Top- Down Approaches to Supply Chain Management and Modeling. In Sloan WP, vol. 4017. Sloan School of Management, MIT, Boston, MA.
8
Evaluating the Introduction of Deductibles in the Health Insurance System Michele Sonnessa, Elena Tànfani, and Angela Testi
8.1 Deductibles in the health system Helderman and Peelen (2004), described how public decision- makers were evaluating the possibility of introducing deductibles in the social health system, to provide a scheme of regulated competition among insurers and providers. Testi et al. (2012) showed how deductibles deeply modify the actual co-payment rules and therefore the prices paid by patients. Indeed, demand depends on elasticity and therefore price increases reduce demand. The impact of co-payment over the public budget and over different citizen groups should be then carefully evaluated. In particular, a new co-payment scheme should allow ● ●
●
the system to be kept in a state of financial equilibrium, the equity of the system to be increased, or at least not decreased, and the complex current rule set to be simplified.
In particular, the choice of simplifying the rules applied to a very large and heterogeneous group of patients can affect subgroups in very different ways, and these effects should then be carefully taken into account. In other words, the rule-set should be equitable, which is the requirement that each sub group should observe the same effect from a change in the rules. In this general context, the paper describes an agent-based simulation model to evaluate the impact of different co-payment rules in a 131
132 Michele Sonnessa, Elena Tànfani, and Angela Testi
particular Italian area, with particular interest in evaluating micro-level effects of macro-level policy changes.
8.2
The model
We created an agent-based simulation model (for previous versions of the model, see Testi et al. (2012)), which decision-makers can use as a tool to design co-payment rules, since such a technique represents the most effective tool to investigate micro-level effects on individuals in a simulation context. On the strength of their flexibility and realism, Agent based model(ABM)s have been largely adopted over recent years to model a wide range of social problems. The generally greater complexity of ABMs, however, also requires the modeler to make potentially many assumptions regarding ● ● ●
the amount and type of information possessed by the agents, the manner in which that information is processed, and the rules governing the interactions between agents.
Traditionally, these rules have been modeled using intuitive plausibility, rather than empirical accuracy. In recent years the idea of designing modeling assumptions on empirical observations has been assessed (Janssen and Ostrom, 2006; Heckbert et al., 2010). The developed model aims to represent individual behaviors and interactions among three classes of agents (i.e., patients, physicians, and public decision-makers) and to control two relevant variables: the number of prescriptions and the co-payment amounts. As shown in Figure 8.1, the number of prescriptions depends on the physician’s behavior (i.e., their propensity to prescribe) and the patient’s demand. The latter depends on the propensity to request a prescription, Physician’s prescription propensity Patient demand propensity
Number of prescriptions Patient demand
Prescription price
Figure 8.1 Control variable causal relationships
Co-payment amount
Evaluating the Introduction of Deductibles 133
which is, given the patient’s health status, determined by the co-payment price. A specific co-payment scenario determines the price for each prescription (drugs, diagnostics, specialist visits) and so, indirectly, the number of prescriptions. This choice has a direct effect on the government’s co-payment revenue and the distribution of its burden among different citizen groups. Taking into account the total revenue and prescription distribution, the decision-maker can adjust the scenario rule-set and test its effect on the two control variables. 8.2.1
Policymaker
The policymaker represents a singleton agent whose role is to manage co-payment rules. It has been modeled as a client representative (avatar) of the experimenter, as one of the patterns used in agent-based modeling. According to Paker (2010), the artificial agent is not autonomous but plays a role within the model that is directly controlled by the experimenter, the “observer” of the model. In the present model implementation, the policymaker is characterized by a fixed behavior, which is initially set as a simulation parameter. His or her role consists of applying co-payment rules to determine the price of each prescription, and the task is accomplished by applying the χ function, which embeds the rules of co-payment. 8.2.2
Physician
Physician agents are connected to a network of patients from whom they receive requests for prescriptions. Their role is mainly an accelerator process, since they are able to slow down or increase speed of prescriptions. Their behavior is mainly driven by a prescription propensity function which models how the physician reacts to the patients’ requests. The physician receives a patient’s prescription request, characterized by a specific service type and pathology. Applying the prescription propensity function, the physician then determines the value of γ (i.e., the probability, of providing a particular prescription). The scalar value γ determines three possible situations: ●
●
γ < 1: the physician assesses the request’s appropriateness and may refuse to provide the prescription; to transform γ into a decision, a random number ε in the interval [0, 1] is generated. The prescription is only provided if ε < γ. γ = 1: the physician is neutral with respect to the patient request, and the prescription is always provided.
134 Michele Sonnessa, Elena Tànfani, and Angela Testi ●
γ > 1: the physician behaves according to the “defensive medicine” principle, leading to “supplier-induced demand”; the physician generally tends to accede to patient requests, to avoid legal risks. In this case, the prescription is always provided, and an additional prescription is delivered with a probability of γ − 1.
Physician agent is modeled as a mix of estimated and empirical data: the network of relationships between physician and patient are derived from the empirical dataset, while the prescription propensity is an estimated function. 8.2.3
Patient
Patient agents are characterized by age, yearly income, and some pathologies. Their role in the model consists in requesting and buying prescriptions, according to the decision-making process detailed in Figure 8.2. Requests are taken from their individual prescription database. If the physician complies with the request, the patient evaluates the price to pay for it (determined applying co-payment rules) and takes action accordingly. A general price response probability function (R) is applied to this evaluation: the prescription is bought if the computed probability is greater than the randomly generated number ε. The price response function R is a key model element and strongly depends on the scenario type. Even when we could suppose that agents required prescriptions based on their health status (determined by the number of pathologies and age) and their income level, we opted to model the demand function as a linear regression of the empirical data. Demand is thus considered an exogenous model parameter. The R function is built to get a probability related to the price of a single prescription. It works well in a system where co-payment depends on single requests. With the introduction of a deductible-based co-payment system we changed the utility function. In fact, the perception of patients in terms of advantage of buying a prescription depends not only on single requests but on the aggregate expense for the health services. The patient’s utility to buy a prescription must be evaluated taking into account his or her hypothesis about future needs for the health service. If the total amount spent up until the decision is near the limit of the deductible and the patient knows that he or she will need other services in the future, the choice must also take into account the future advantage of reaching the cap of the deductible (when every subsequent prescription is free).
Evaluating the Introduction of Deductibles 135
Start request
Extract prescription from database
Submit to physician
No Physician prescribes?
Apply demand function
No Buy?
Buy prescription
No prescription
Figure 8.2 Functions involved in patients’ prescription process
To ensnare this element it is necessary to introduce a different choice function, to grasp the rational individual choices and to embed an intertemporal evaluation: an “overlook” response function is then introduced, so patients can better evaluate the price of a prescription. By applying this function, patients are better able to plan for the future and to evaluate the prescription price over aggregated expense.
136 Michele Sonnessa, Elena Tànfani, and Angela Testi
Price response function
Overlook function
Patient Database of prescriptions
Co-payment rules
Figure 8.3 Functions involved in patients’ decision process
Figure 8.3 summarizes how decision functions are used in the patient’s decision-making process.
8.3 Data collection and function estimation Combining empirical data with qualitative, quantitative, experimental and participatory methods is highly recommended in agent-based models (Boero and Squazzoni, 2005). In our model, it is very difficult to estimate patient demand, as this demand depends on health status, socio-economics and the psychological aspects. In addition, we have no information about real patient requests that the physician has denied, or about prescriptions that patients have not requested due to current scenario prices. Our approach utilizes current empirical data from an Italian region (Liguria) in 2010, integrating them with strong hypotheses for variables that cannot be directly observed in the available data set. We only know of the prescriptions that the physician has actually written. In our case study, this information was collected by the GP Ligurnet database (the Primary Care Observatory of Liguria), after checking for quality, as Testi et al. (2012) described. Our sample contains 107,695 patients, each with a particular pathology history. Seventy-eight physicians wrote about 12 million prescriptions in 2010. This sample was divided into groups following the usual exemption rules that depend on age, income, and on chronic conditions. However, the empirical data give us no information
Evaluating the Introduction of Deductibles 137
about income, which is important for the application of the co-payment rule. Moreover, for reasons of personal privacy, no linkage is available between the patient and his or her fiscal profile. So we returned to the distribution of family incomes supplied by the official data from the Banca d’Italia Survey on Household Income and Wealth (Banca d’Italia, 2010), which was based on a sample survey of 9,750 families and 19,833 persons. 8.3.1
The price response probability function estimation
The price response probability function (R), which patients use to make their decisions on buying prescriptions, is generated from past prescriptions, correlating the prices and the quantities required at that price level. No distinction is made among different prescription types, because we assume that every prescription, even if of a different type (drugs, diagnostics, specialist visits), is the same from the patient’s perspective, as a service relevant to his or her health. The approach started with empirical data to determine a demand function proxy through linear regression obtained by linking prices to the number of prescriptions that patients bought. 8.3.2
The prescription propensity function estimation
The prescription propensity function, used to determine the physician behavior is also very difficult to estimate, as it is based on qualitative assumptions that are difficult to measure, and clearly motivated by them. To translate such behavior into quantitative parameter, we collaborated with physicians to outline a realistic γ distribution, starting from empirical data. 8.3.3
The overlook function definition
The overlook function is used to modify the probability derived from the current prescription price, with the percentage of aggregate level of expense. Equation 8.1 defines the overlook function as the probability computed by the R function, weighted with a factor depending on the sum of expenses (x) on the deductible floor F. This factor is considered neutral when the total expense is the half of the deductible floor, increasing in probability as the expenses get closer to the floor and decreasing at the beginning of the period.
P
⎛ x R( p ) * ⎜ ⎝ F
⎞ 0.5 0 5⎟ ⎠
(8.1)
138 Michele Sonnessa, Elena Tànfani, and Angela Testi
8.4
Simulation tool
The model is implemented with the JAS 21 framework (Richiardi and Sonnessa, 2013), mainly because it is aimed at developing large-scale, data-driven models. The main value added of the platform lies in the integration with RDBMS (relational database management) tools through ad-hoc microsimulation Java libraries. The management of input data persistence layers and simulation results is performed using standard database management tools, and the platform takes care of the automatic translation of the relational model (which is typical of a database) into the object-oriented simulation model, where each category of individuals or objects that populate the model is represented by a specific class with its own properties and methods. In the JAS 2 architecture, models are organized and managed by components called “managers”. There are three manager types in this architecture: the model, the collector, and the observer. The model describes artificial virtual agents and plans the time structure of events, while collectors are managers that build data structures and routines to dynamically calculate (aggregate) statistics and that create data persistence objects. Observers graphically monitor simulation experiments with plots and other graphics tools. According to this approach, the simulation is aimed exclusively at producing numerical outputs which can be analyzed in depth ex-post using ad-hoc statistical-econometric tools. JAS 2 extends the Swarm’s model-observer paradigm (Minar et al., 1996) so as to include an intermediate structure that calculates statistical values and persists simulation modeling outputs in the database in the most transparent way, minimizing the impact on model implementation. The JAS2 model-collector-observer paradigm fits well with the co-payment model approach to mix empirical and endogenous simulated data. Indeed, the model is designed to read agent populations in the master PostgreSQL database (using database-oriented JAS tools), and the collector is used to automatically collect and write simulation outputs for specific PostgreSQL output databases. The output database is very detailed because it corresponds to a population sampled at a particular simulation time and to aggregate variables collected during the experiment. In JAS 2, the interaction between the simulation and the (input and output) data is inspired to object-relational mapping (ORM), a programming approach that facilitates the integration of object-oriented software systems with relational databases. The use of an ORM facilitates the achievement of higher quality software standards, improving in particular its correctness, maintainability, potential evolutions, and portability.
Evaluating the Introduction of Deductibles 139
A more important feature is the capability of run simulations in batch mode, through the creation of the model and possibly the collectors; this involves managing parameter setup, model creation and execution directly, and is aimed at capturing only the numerical output of the simulation; performing a multi-run session where the simulation is run repeatedly using different parameter values, so as to explore the space of solutions. It was used to find the combination of parameters for each simulation scenario that allowed the same total co-payment to be obtained.
8.5
Output analysis
The model primarily aims to assess the impact of different co-payment rules to help decision-makers. Therefore, it is crucial to assess whether the two main objectives are achieved (i.e., if the total revenue guarantees the system’s sustainability and if the co-payment distribution among citizens is equitable). From the output dataset, it is possible to identify the following: ● ●
total and average expenditure per capita; total and average number of prescriptions per capita.
These indicators can be extracted for all patients, but the model is also able to give detailed insight into different patient groups, based on the following criteria: ● ● ●
pathology (chronic or non-chronic); age (young or old); income (rich or poor).
8.6
Scenario analysis
According to current co-payment rules, there is a maximum payment per prescription (€4 for drugs and €70 for diagnostics), while the deductible scenario implies that the patient pays the full price for drugs and diagnostics. Nevertheless, if a given patient’s total expenditure over the last year has surpassed a particular amount, individually determined (deductible), any additional prescription will be totally free for that patient. In other words, the National Health System will be entirely responsible for prescription payments after the patient meets his or her deductible level. The individual deductible level should depend on family or individual income. There are different ways to compute the deductible level: with a constant percentage, a progressive percentage, or a progressive
140
Michele Sonnessa, Elena Tànfani, and Angela Testi
percentage up to a pre-defined value. These different deductible types must be defined to guarantee the same aggregate co-payment level, which should remain at approximately €6.7 million. Therefore, a parameter exploration has been conducted to select a deductible configuration that guarantees a total return amount closest to this target. The following scenarios have been tested: ●
●
●
Proportional deductible: The proportional deductible is defined as a unique income percentage for all patients. This system is valuable because it is simple and uniform, even if it seems to disadvantage poorer population brackets (see Figure 8.4). Progressive deductible: The progressive deductible applies an increasing income percentage. This level increases progressively, according to a solidarity principle which asks richer people to contribute more. This scenario has an intrinsic risk: if the public system becomes more expensive than the private system (for richer people), patients may choose to leave the public system, causing it to reduce quality and efficiency levels and the total co-payment. The progressive deductible requires two parameters: the minimum value, applied to the first percentile of the population, and the incremental step to be applied to the subsequent percentiles. Capped progressive deductible: To mitigate the potential negative effects of the progressive deductible for higher incomes, a version with a
Proportional
Progressive
Progressive with cap
Figure 8.4
Types of deductibles
Evaluating the Introduction of Deductibles 141
●
●
maximum applicable income percentage is introduced. It protects richer groups from excessive fiscal contributions and reduces the likelihood that they opt out of the private system. Progressive deductible with cap and bonus: To reproduce the effects of pathology-based exemptions, as applied in the current co-payment system, an income bonus for chronic patients is introduced. This bonus functions as an income deduction for chronic patients. The deductible amount is computed after this deduction. Overlook: This scenario introduces the use of the overlook function in a patient’s decision-making process, to investigate the intertemporal effect of the deductible on agents’ evaluations.
By comparing all simulated combinations (Table 8.1), the best configuration for each type of deductible scenario was selected, such that the aggregate expense is comparable to that of the current co-payment system: Figure 8.5 shows how different deductible scenarios impact different income levels to grant the same aggregate revenue, and how they affect Table 8.1
Selected deductible scenarios
Scenario
Total revenues
Current Proportional deductible Progressive deductible Capped progressive deductible Progressive deductible with cap and bonus Overlook
6,681,325 6,658,951 6,595,418 6,651,446 6,648,684 6,672,710
Deductible
€800.00
€80.00
€8.00 €10,000.00 €20,000.00 €30,000.00 €40,000.00 €50,000.00 €60,000.00 €70,000.00 €80,000.00 Income level Progressive
Proportional
Figure 8.5 Different deductible scenarios
Cap 0.007
142
Michele Sonnessa, Elena Tànfani, and Angela Testi
different patient groups. For instance, reducing the cap for richer people necessarily increases the expense for poorer segments. The middle class, however, is not particularly sensitive to this specific choice, as scenarios generally impact the extreme distribution values.
8.7
Results
All of the aforementioned scenarios that are able to yield the same total co-payment have been simulated to assess their impact on prescription quantity and patient expense. In Table 8.2, this impact is detailed by different patient groups (i.e., all, chronic, non-chronic) and compared with the current co-payment rules. Looking at aggregated results we can make four main assumptions: ●
●
● ●
The deductibles are better than the current scenario, since they guarantee a greater number of prescriptions, even if the difference is not so relevant. Among the deductible scenarios the progressive seems to be preferable because it provides the highest number of prescriptions. The bonus effect is not so relevant. The overlook function effect seems to increase the number of prescriptions.
These analyses require drilling down into data to evaluate how the solution can be considered equitable. Unfortunately the positive impression obtained by aggregated results of deductibles is not confirmed by comparing the effect on different sub-groups. In fact, the deductible disadvantages the chronic group, which has a reduction in the number of prescriptions but a significant increase in expense. This phenomenon is partially mitigated by the introduction of the income bonus. Very surprisingly, the application of the overlook hypothesis on deductible changes the context of results, since the chronic group reduces the aggregated expense without changing the number of prescriptions. The introduction of overlook function, by selecting a combination of parameters that produces a comparable co-payment, increases the number of prescriptions and so deductibles can be considered a fairer system. At the same time it does not affect the two sub-groups in the same way. Even with its application the chronics are disadvantaged because they consume proportionally less than the acute patients.
Evaluating the Introduction of Deductibles 143
Table 8.2
Aggregated results
Group
Scenario
All
Current Proportional deductible Progressive deductible Capped progressive deductible Progressive deductible with cap and bonus Overlook
Chronic
Current Proportional deductible Progressive deductible Capped progressive deductible Progressive deductible with cap and bonus Overlook
Not chronic Current Proportional deductible Progressive deductible Capped progressive deductible Progressive deductible with cap and bonus Overlook
Total # of Delta on Total Delta on prescriptions current copayment current 3,342,127 3,385,718
0.0% 1.3%
6,682,970 6,655,056
0.0% −0.4%
3,394,926
1.6%
6,591,287
−1.4%
3,391,556
1.5%
6,663,823
−0.3%
3,391,914
1.5%
6,652,292
−0.5%
3,498,497
4.7%
6,672,710
−0.2%
2,195,999 2,150,004
0.0% −2.1%
3,037,858 3,397,349
0.0% 11.8%
2,147,569
−2.2%
3,491,134
14.9%
2,145,251
−2.3%
3,519,782
15.9%
2,168,820
−1.2%
3,204,993
5.5%
2,217,816
1.0%
2,749,600
−9.5%
1,146,128 1,235,714
0.0% 7.8%
3,645,112 3,257,707
0.0% −10.6%
1,247,357
8.8%
3,100,153
−15.0%
1,246,305
8.7%
3,144,041
−13.7%
1,223,094
6.7%
3,447,299
−5.4%
1,280,681
11.7%
3,923,110
7.6%
144
8.8
Michele Sonnessa, Elena Tànfani, and Angela Testi
Conclusions
Building the most equitable, cost-effective co-payment policy is currently one of the most challenging goals for health system policy-makers. The introduction of a co-payment system based on deductibles requires a simulation tool to forecast its effects and to calibrate it in order to obtain the expected revenue. We created an agent-based simulation model, which decision-makers can use as a tool to design co-payment rules. In order to provide an effective simulator the model must be very closely linked to real data. A comparison among different deductibles configurations is presented, along with their impact on different group of patients. An in-depth description of the tool used is also provided to show how software approaches can help by using agent-based models to optimize rules.
Notes We wish to thank GP Ligurnet – especially Pierclaudio Brasesco – for collaboration in data supply. All authors acknowledge and appreciate the grant support of the Italian Ministry of Education, Universities and Research (MIUR), within the FIRB project N. RBFR08IKSB. 1. http://www.jasimulation.org
References Banca d’Italia (2010). Survey on Income of the Italian Families. http://www.bancaditalia.it/statistiche/indcamp/bilfait. Boero, R. and Squazzoni, F. (2005). Does Empirical Embeddedness Matter? Methodological Issues on Agent-based Models for Analytical Social Science. Journal of Artificial Societies and Social Simulation, 8(4). http://jasss.soc.surrey.ac.uk/8/4/6.html. Heckbert, S., Baynes, T. and Reeson, A. (2010). Agent-based Modeling in Ecological Economics. Annals of the New York Academy of Sciences, 1185( 1), pp. 39–53. Helderman, J. K. and Peelen, A. (2004). Co-payments and Deductibles. In Health Policy Monitor, April 2004. http://www.hpm.org/survey/nl/b3/2. Janssen, M. and Ostrom, E. (2006). Empirically Based, Agent-based Models. Ecology and Society, 11( 2), p. 37. Minar, N., Burkhart, R., Langton, C. and Askenazi, M. (1996). The Swarm Simulation System: A Toolkit for Building Multi-agent Simulations. In SFI Working Paper, 42. http://www.santafe.edu/media/workingpapers/ 96–06–042.pdf. Paker, R. A. (2010). Virtual Markets: The Application of Agent-based Modelling to Marketing Science. PhD thesis. http://epress.lib.uts.edu.au/ research/bitstream/handle/10453/20281/02Front.pdf?sequence=2.
Evaluating the Introduction of Deductibles 145 Richiardi, M. and Sonnessa, M. (2013). JAS 2: A New Java Platform for Agentbased and Microsimulation Modeling. In LABORatorio Revelli WP, 134/2013. http://www.laboratoriorevelli.it/_pdf/wp134.pdf. Testi, A., Sonnessa, M. and Tànfani, E. (2012). How to Build an Agent-based Model to Assess the Impact of Co-payment for Health Services. In Proceedings of the 2nd International Conference on Simulation and Modeling Methodologies, Technologies and Applications, pp. 556–563. July 29–31, 2012, Rome, Italy.
9
Ex-Ante Evaluation of Public Policies: Unintended Results of Broadband Development Riccardo Boero
9.1
Introduction
There are many reasons why supporting policy choice and design with ex-ante evaluation is a tough job, but two issues are often considered insurmountable. First, what-if analyses are required even if there is a complete lack of experiential, experimental and counterfactual evidence. Second, ex-ante evaluation is particularly important when general knowledge lacks the policy to implement, that is to say when public policies deal with issues that have recently emerged. To clarify the point, consider public investments aimed at fostering broadband internet use. Policy- makers and the general public often look at these policies with favor, assuming that the adoption of such technologies has more pros than cons, as has been experienced with many other Information and communications technology (ICT) innovations. However, scientifically speaking, what do we really know about the effects of broadband on economic activity, considering its relative novelty? Furthermore, what are the feasible goals of the policy? Finally, what are the dynamics that allow policies to be successful, and thus how should policies be designed? In this chapter we investigate the example of broadband development with two main aims. First, ex-ante evaluation can enrich policy debate and design only if it does not take for granted policy aims, that is to say that public support needs to question easy enthusiasm and policy aims. Carrying out an ex-ante evaluation of a policy does not only mean supporting policy design but also verifying hypotheses underlying the policy proposal, as hypotheses and aims can, unfortunately, be inconsistent or simply impossible. Evaluating the feasibility of policy aims is the first contribution that scientists can provide to policy-makers. 146
Ex-Ante Evaluation of Public Policies
147
Second, we show that when robust empirical evidence and models is lacking (i.e., when knowledge is insufficient), a tool such as an agentbased model is very useful to conduct what-if analyses. In fact, agentbased models can be used for both empirical and theoretical modeling, and this capability allows all the data available to be used and, at the same time, hypotheses about the unknown to be investigated. 9.1.1
The policy question
We refer to a press release by the European Commission as a credible and representative statement of the intent and of the reasons to conduct policies boosting broadband internet access and services in rural areas. The release announces a plan to finance policies with that aim and which have to be developed and implemented by member states and lower level governments. Our focus here is on the reasons why the European Commission has chosen to act. The first is that “improved Internet connectivity is a powerful tool to stimulate swift economic recovery” (European Commission, 2009). Thus, given the worldwide economic crisis at the time of the decision, the policy-maker chose this policy as a countermeasure to the economic downturn because it promises rapid and positive results. The second sentence of interest in the press release is that “good Internet access can make farms and companies in rural areas, especially small and medium sized enterprises (SMEs), less isolated and more competitive through access to international markets and faster and more efficient ways of doing business” (European Commission, 2009). The idea here is that the reason for the low economic growth of rural areas in Europe is their isolation, and by means of broadband connectivity the problem is resolved with positive impacts in particular for SMEs. 9.1.2
The dilemma of the rural impact of broadband
Are the claims mentioned above based on scientific evidence? Unfortunately so far evidence about the impact, either positive or negative, of broadband development in rural areas is weak. In particular, Dimelis and Papaioannou (2011) find an effect on productivity similar to other ICT innovations, and only on a few specific industries that provide such technologies or that are highly technology intensive. However, such industries are rarely localized in rural areas; productivity changes need time to take place; and the analysis, conducted at the level of the US and the EU, does not provide an understanding of the dynamics within and across different areas ( rural vs urban, etc.).
148
Riccardo Boero
Similarly, in Crandall et al. (2009), the problem of evaluating the longterm effects of this recent technology, such as spillovers and network externalities, is pointed out, and the few data items available confirm a modest but positive impact on the productivity of a few sectors, without the capability to discern local and rural effects. In general, however, productivity impacts are long-term ones, and the data available does not often allow robust analysis, as pointed out in the review by Holt and Jamison (2009). The only strong evidence of the impact of broadband policies has to be related to the literature on the impacts of public spending. In fact, public spending certainly has had a positive temporary economic impact while the construction of the broadband infrastructure has taken place in rural areas. However, such impact has been estimated as lower than other infrastructure spending, such as roads and bridges, because very few of the technological products required for the broadband infrastructure are produced in rural areas (Katz and Suter, 2009). Furthermore, taking a long-term perspective on rural areas, network externalities can also have negative impacts because of capital–labor substitution and because of relocation of employment and outsourcing of jobs (Katz and Suter, 2009). Similarly, with a county-level analysis, Shideler et al. (2007) found an aggregate positive impact on economic activities due to a few specific sectors; for example, when broadband has been found to positively impact rural counties, it is because of the relocation of call centers. In summary, there is no evidence of positive impacts on SMEs; on the contrary, other analyses at the state level have clearly shown that SMEs are less likely to be affected by the technology (Lehr et al., 2005). Finally, looking more closely at rural areas, Kandilov and Renkow (2010) found that loan programs for broadband deployment and adoption in the United States have produced a higher positive impact in rural communities closest to urban areas, thus excluding the most disadvantaged rural areas. In conclusion, the literature has identified a positive aggregate impact of broadband after some years (Koutroumpis, 2009) that can be assimilated into the impact of other ICT innovations. However, rural economies seem to be not affected by broadband even where public policies have successfully promoted its adoption (LaRose et al., 2011), and the time horizon for significant impacts is years, if not decades. The only short-run positive impact is the construction of the infrastructure, but again other kinds of infrastructure can be more effective in promoting development in rural areas.
Ex-Ante Evaluation of Public Policies
149
To sum up with Galloway (2007), the lack of propensity to growth and diversification that characterizes rural areas seems not to be solved by broadband connection. 9.1.3
The research approach
The limited amount of evidence available in the literature seems to be against the reasons claimed to support policies for broadband development, in particular when focusing on short-term impacts on rural areas. However, there has thus far been a point almost ignored, about shortterm dynamics that could impact local economies. In fact, besides the impact due to the construction of the infrastructure, broadband can affect supply chain creation and thus really alleviate the isolation of rural areas, as claimed in the policy message mentioned above. In the remainder of this chapter we focus on supply chain creation, and we conduct a what-if analysis that investigates whether a regional economy composed of rural and non-rural areas shows any relocation effects due to broadband. We need a what-if analysis because we do not have behavioral or empirical data about the impact of broadband adoption in the behavior of supply chain creation by firms demanding intermediate goods and services. Thus, we make hypotheses about that, and we compare the results we obtain under different hypotheses. The chapter continues as follows. Section 9.2 describes the agentbased model, our modeling hypotheses about the changes induced by broadband and the large datasets we have used. The model focuses on an Italian mid-size region, Piedmont, with a population of about 4.5 million people, in a specific year, 2006. Section 9.3 presents the model results and the last concludes by summarizing and discussing them.
9.2 An input–output agent-based model An agent-based model is a modeling tool providing flexibility in choosing the level of analysis and detail. Features such as heterogeneity in agents, complex interaction structures, and multi-level modeling are only some of the most important features provided. Because we are aiming at studying the impact of broadband development on different areas of a region, we have three main requirements for the model: We need to have a high degree of detail at the spatial level; we need to have heterogeneity in agents in order to effectively model differences among industries; and we need to have a detailed modeling of the interaction structure in order to model possible changes in supply chains induced by broadband.
150 Riccardo Boero
Furthermore, we need to inform the modeling with empirical data in order to evaluate the impact of the public policy on a specific area and because we want to avoid limitations given by the aggregate and statistical relationship-oriented focus of micro-econometric models of regional economies. The means to overcome such limitations is to explicitly take into account a high level of detail in describing economic agents heterogeneity in terms of size, location, production process, and interaction. Following a modeling approach introduced in Boero (2006) and (2012), we thus model the regional economy as composed by its approximately 500,000 establishments. Each agent (establishment) has three main features or characteristics: It is located in a specific municipality of the region (there are over 1,200 municipalities in Piedmont); it is specialized in a specific sector of economic activity; and it employs a certain number of workers. Most such data about establishments is available from the Archivio Statistico delle Imprese Attive (ASIA) managed by the national statistical office (ISTAT) and the remainder can be estimated using census data relating to agricultural and industrial production, and data from the registry of active firms kept by the local Chamber of Commerce. For the sake of this project, we assume that such data is available, updated and with a high level of quality, that is to say that data estimated or collected with surveys has a high degree of reliability and is without systemic errors. The data just mentioned allows the model to be populated with a set of agents that represent a static but locally detailed picture of the regional economy at that point in time. The behavior of agents is based upon the input–output table of the regional economy for the same year, that is to say 2006. An input–output table, synthetically, represents the production processes in a region and it is built as a matrix in which each column and each row represent an industry; the table thus gives information regarding the production function of the corresponding sector. The production process of a good or of a service is complex and it requires labor and intermediate goods (besides the investment goods that we consider here as given). Thanks to the input–output table it is possible to infer the average amount of intermediate goods needed for any production process, given the average technology adopted by firms in the region. Input–output tables are built on national accounts and other empirical data sources, and they represent an observation of the economic processes that have taken place in the region during the period in question.
Ex-Ante Evaluation of Public Policies
151
The agents’ behavior is thus modeled by using the data in the columns of the input–output table. First, each agent belongs to a sector and thus the corresponding column is selected. Second, the data in the column represents the production of all agents of that industry in the region, and thus to transform the column from an industrylevel to an establishment-level set of data we need to make a simple transformation. We divided the values in the column by the number of employees in that sector at the regional level. We thus obtained a column representing the production process of an average employee in that sector. Such information is stored in each agent of our model and it is used as main driver of behavior. For instance, if an agent receives the order to provide a specific value (or amount, if the price is known) of its good (or service), the agent now knows exactly how many intermediates and labor are needed to produce it. Furthermore, the maximum production capacity is known, as long as the observed number of employees in the establishment is considered a maximum level that cannot be increased in the very short run. With the information about intermediate goods, we know that each establishment receiving a final or intermediate demand has to buy intermediate goods and services in order to make a start on the production process. But many suppliers for each sector are present in the region, thus the question becomes from whom to buy the desired intermediate good or service. In other words, although the data from the input– output table supports the behavior of establishments in building supply chains, it is incomplete. We thus add two simple hypotheses. The first is that producers during the year of reference can not easily increase the amount of production over their production capability defined by their size (that is, by the observed number of employees and their productivity). Second, there is a probabilistic function that gives more probability to nearby suppliers of the needed intermediate. In particular, realistic travel time by road is considered among establishments, and suppliers are not chosen randomly but according to a probability that decreases as their distance from the establishment wanting the product increases. Furthermore, according to the first hypothesis, suppliers already producing at their maximum level can not increase production, and thus saturated suppliers can not participate to further supply chains. The model includes many more variables and assumptions related to the demand by government, by other regions and countries, to the
152 Riccardo Boero
investment dynamics, to fiscal policies, and to income multipliers and household consumption. However, they are not relevant to the analysis presented here, as they are kept constant across the scenarios and equal to the values observed in the year of reference. In other words, such variables are exogenous here, and their impact has already been taken into account in the data in the input–output table. Finally, in order to allow the simulation of the model to reach a solution without excessive computational burden, a threshold is set to stop the propagation of provision orders for intermediate goods. That is to say, when orders for provisions are diffused in order to allow production processes to happen, they are erased from the system if their individual price is below the threshold of €1. This threshold means a reduction in the precision of the model results, but it is largely compensated by the reduction in the time of computation. In synthesis, the dynamics of the model works as follows. First, there is an exogenous flow of final demand reaching some of the agents. Second, each activated agent creates a supply chain to provide the necessary intermediates. Third, activated suppliers of intermediates iteratively create their own supply chains till the value of intermediates demanded in each provision order is lower than the threshold. Furthermore, the spatial dimension plays an important role in the model from a twofold perspective. First, all agents are situated in space according to their location observed in reality, and thus concentrations such as clusters, and the specialization of activities in urban areas, are explicitly taken into account. Second, the proximity of agents, measured by means of travel times, probabilistically determines supply chains in conjunction with the production function determined by the adopted technology. The model has also been validated at the spatial level (see the next chapter) and it allows several economic phenomena to be studied. In order to study the impact of broadband development over the short run we need to build two scenarios, as follows. 9.2.1
The modeling of broadband impacts
Our research question regards the hypothetical impact of a public policy. In particular, we want to understand whether or not broadband development improves rural economic development. To answer our research question we are investigating a what-if hypothesis as follows: What happens to economic development in the hundreds of areas composing the region if broadband really does impact the creation of supply chains?
Ex-Ante Evaluation of Public Policies
153
We thus build two scenarios, aiming at comparing the benchmark scenario where broadband has no effect on supply chain creation with the scenario where broadband does matter. The common element of both scenarios is constituted by exogenous variables. As mentioned before, variables such as fiscal pressure, investments, and income multipliers are kept constant and equal to the observed values in the region in the period of reference. Furthermore, to start up the dynamics of supply chain creation in the model, we impose on both scenarios an exogenous final demand corresponding to a representative sample of the total final demand. Specifically, this is 0.5% of the total final demand observed in the region in the year of reference, maintaining for the sample the distribution of the total amount, both in terms of industries and in terms of space. A sample (i.e., a percentage of the total final demand) is required in order to keep the computational burden low. The benchmark scenario is thus made as described above: final demand reaches some establishments and then the propagation of production happens through supply chains determined by geographical proximity, as defined by the transportation infrastructure and by saturation of production capacity. The scenario in which we explore what happens if the introduction of broadband changes the supply chain formation relies on the rates of adoption of broadband in the region that year. The data relating to adoption rates comes from the Piedmont ICT Observatory, and it is available in terms of values of adoption according to the size of the establishment, to the industry, and to the province of localization. The information is amalgamated and transformed into a probability value of adoption for each of the approximately 500,000 establishments in the region. The broadband scenario starts as the benchmark, with an exogenous and representative final demand reaching some establishments. Then it proceeds similarly, with a propagation of supply chains based upon proximity. Here, however, “proximity” is slightly different; the geographical proximity defined by the transportation infrastructure is coupled with the proximity defined by the adoption of broadband. In particular, our hypothesis to study the impact of broadband in the short run is that broadband reduces distances, and thus in our model we cancel the geographical distance between two establishments if both adopt broadband. In other words, the supply chain algorithm is the same as before, but if the establishment looking for intermediates in a specific industry adopts broadband, the distance to all suppliers in that industry adopting broadband is canceled, increasing the probability of their being selected. A corollary of this latter case, relative to the benchmark case, is
154
Riccardo Boero
that the probability of being selected by a buyer who has adopted broadband diminishes for suppliers that do not adopt broadband.
9.3
Results
We run the model in the two scenarios, and we compare results in terms of activated employment as the measure of economic impact. Before presenting results, however, it is necessary to differentiate areas in order to identify the rural ones and to analyze the impacts in the different kinds of areas. The areas we consider, as mentioned before, are the over 1,200 municipalities in the region; and in order to identify which of these are rural we adopt the OECD criterion by which an area is rural if its population density is lower than 150 inhabitants per square kilometer. We then identify two other kinds of area: urban, where inhabitants are more than 15,000 per square kilometer, and intermediate, the municipalities that are neither urban nor rural. Population data refers to 2006. Overall, rural areas represent 73% of all areas, intermediate are 23%, and urban, 4%. The different areas are shown in Figure 9.1. We run the two scenarios till the dynamics stops, that is to say until the propagation of orders for supply by intermediates comes to an end. The outcome of the simulation is the number of employees activated in each establishment under the two scenarios. Aggregating employment data at the establishment level by municipality (that is, summing establishment values in all industries in each municipality), we obtain the values of employment activated in each of the two scenarios. The difference between this latter value for the scenario where broadband influences supply chain formation and that obtained in the benchmark scenario is our new value in focus; it represents the change in employment in each area caused in supply chain definition by broadband adoption. Because the exogenous shock we impose onto the model to start the dynamics is a sample of total final demand, the absolute values we obtained represent absolute changes referring to a sample of the total final demand. The sample, as said above, is representative of final demand reaching the economic system in both spatial and industrial terms. Since the sample represented 0.5% of total final demand, in order to project the change to the full value of final demand we multiply the sample impact by 200. We can thus compute for each area the ratio between the employment in the broadband scenario and the total amount of employment under benchmarking conditions. This percentage value allows comparison of areas with widely different populations and work forces.
Ex-Ante Evaluation of Public Policies
155
Rural Intermediate Urban
Figure 9.1
Rural, intermediate, and urban areas in the Piedmont region
Results are presented spatially in Figure 9.2, and they can be compared with the different kinds of areas presented in Figure 9.1. We identify areas with an increase in employment due to broadband as those where the employment change is greater than or equal to 5%. Areas of decreasing employment are those with a change in employment less than or equal to −5%. All other areas are considered without a relevant change.
156
Riccardo Boero
Decrease No change Increase
Figure 9.2
Changes in local employment levels due to broadband development
By briefly comparing Figure 9.2 and Figure 9.1, it appears that rural areas are not uniformly affected by broadband. To better understand changes in different kinds of areas, we look at the distribution of changes across the kinds of areas in Figure 9.3. The percentage of rural areas without significant change due to broadband adoption is almost 50%. The remaining rural areas are almost
Ex-Ante Evaluation of Public Policies
157
60% 50% 40% 30% 20% 10% 0%
Decrease
No change
Increase
Rural
27%
48%
25%
Intermediate
39%
37%
24%
Urban
25%
48%
27%
Figure 9.3 areas
Change of local employment due to broadband development across
equally distributed between those with increasing and those with decreasing employment, but with a slight prevalence of areas negatively affected (27% vs 25%). This is exactly the same for urban areas, but in this case with a slight prevalence for the positively affected areas (25% vs 27%). In sum, it seems that the effects of broadband development in rural and urban areas are minimal, and there is only a very small transfer of employment from rural to urban areas. However, if we look at values in Figure 9.3 referring to intermediate areas the result is different. In fact, a smaller fraction of intermediate areas is left untouched by broadband development (37%), and in the relative majority of intermediate regions employment actually drops. This latter result is confirmed by Figure 9.4 where percentage employment change is plotted against quantiles of intermediate areas. Figure 9.4 suggests that although much of the distribution is concentrated over the 0 value, the left curve of the plotted distribution is less sharp than the right curve, and thus the distribution is skewed towards negative changes. In summary, we have identified two main results. First, rural and urban areas are hardly affected at all by broadband development as studied in
158 Riccardo Boero
2
Change
0
–2
–4
–6 0
0.25
0.5 Fraction of the data
0.75
1
Figure 9.4 Percentage change of employment due to broadband development in intermediate areas
this work. Second, intermediate areas show a significant decrease in their employment level, absorbed by urban areas. However, given the size of these latter, the increase in their employment is minimal in percentage terms.
9.4
Conclusions
The results from the model make clear the emergence of some employment relocation effects due to broadband that should not come as a surprise when seen from the perspective of economic geography. In fact, the many of the intermediate areas are small urban centers that have evolved as providers of services for surrounding rural areas that are too far from big cities. By adopting a technology that erases physical distance, all rural areas can have access to the abundance of competitive suppliers located in urban centers. The supply chain creation we modeled suggests that polarization forces in service industries can be enhanced by the introduction of broadband, making non-urban areas even more peripheral.
Ex-Ante Evaluation of Public Policies
159
Activities located in rural areas are hardly affected at all by broadband, since the reasons why they are located there are not affected by the technology. However, broadband can change incentives driving activities to urban areas, but these eventual changes need time to take place, and so far we do not know if the advantages given by broadband connection are capable of overcoming urban advantages due to agglomeration and urbanization economies. In other words, no significant long-term effect on localization and re-localization of economic activities in rural areas has yet been observed. In conclusion and from a broader perspective, we have shown that agent-based models can conduct what-if analyses enriched by large empirical data sources even when studying policy proposals about innovative issues that have not been fully scientifically investigated. The research strategy we adopted used empirical data to build the model and a theoretical hypothesis about the impact of broadband on supply chain creation. By those means, we were able to compare two scenarios and find a quantitative answer to our research question. As a final point, we could ask whether the hypotheses we modeled in our scenarios found any empirical confirmation in observed employment data in 2006, focusing on the correlation coefficients between the values obtained in the two scenarios and the real values. The R2 between the two scenarios and the real employment value is 0.98. There is no difference between the two scenarios until the fifth decimal digit, and that small difference can be considered as due only to noisy data. If we look at the R2 computed over values for the three different kinds of areas in the region (i.e., rural, intermediate, and urban), the results for non-urban areas are in favor of the scenario where broadband does not modify supply chain creation. In fact, when considering rural areas only, the benchmark scenario produces data with an R2 that is 16% greater than the broadband scenario, and 3% greater in intermediate areas (0.1% in urban areas). Overall, the analysis of the empirical salience of the supply chain creation mechanism suggests two further results. First, the high total R2 value for both scenarios validates the capability of the model, and in particular of the supply chain creation mechanism to produce realistic outcomes across space. Second, because the benchmark scenario is more realistic than the broadband scenario in rural areas, it seems that the hypothesis about the change that broadband development has on supply chain creation is realistic, but that change takes time. In fact, the
160
Riccardo Boero
supply chain creation seems to be less likely to be affected by broadband in the rural and intermediate areas that have most recently adopted it.
References Boero, R. (2006). Un modello dell’economia piemontese come sistema complesso: interdipendenze economiche e territoriali tra centro e periferia. In G. Russo and P. Terna, eds, Produrre a Torino: atti della conferenza Rota 2005. Edizioni Otto, Torino, Italy. Boero, R. (2012). Short and Medium Term Evolution of a Regional Economy after the Crisis: Forecasting the Near Future of Piedmont with an Agent-based Input Output Model. In G. Russo and P. Terna, eds, Innovare in Piemonte. Edizioni Otto, Torino, Italy. Crandall, R. W., Lehr, W. and Litan, R. (2009). The Effects of Broadband Deployment on Output and Employment: A Cross-sectional Analysis of US Data. Issues in Economic Policy, 6, pp. 1–34. Dimelis, S. P. and Papaioannou, S. K. (2011). ICT Growth Effects at the Industry Level: A Comparison between the US and the EU. Information Economics and Policy, 23(1), pp. 37–50. European Commission (2009). Better High-speed Internet Access Needed to Revitalise Europe’s Rural Regions, Says Commission. Tech. Rep. IP/09/343 03/03/2009. European Commission. Galloway, L. (2007). Can Broadband Access Rescue the Rural Economy? Journal of Small Business and Enterprise Development, 14(4), pp. 641–653. Holt, L. and Jamison, M. (2009). Broadband and Contributions to Economic Growth: Lessons from the US Experience. Telecommunications Policy, 33(10), pp. 575–581. Kandilov, I. T. and Renkow, M. (2010). Infrastructure Investment and Rural Economic Development: An Evaluation of USDA’s Broadband Loan Program. Growth and Change, 41(2), pp. 165–191. Katz, R. and Suter, S. (2009). Estimating the Economic Impact of the Broadband Stimulus Plan. Columbia Institute for Tele-Information Working Paper. Koutroumpis, P. (2009). The Economic Impact of Broadband on Growth: A Simultaneous Approach. Telecommunications Policy, 33(9), pp. 471–485. LaRose, R., Strover, S., Gregg, J. L. and Straubhaar, J. (2011). The Impact of Rural Broadband Development: Lessons from a Natural Field Experiment. Government Information Quarterly, 28(1), pp. 91–100. Lehr, W. H., Osorio, C. A., Gillett, S. E. and Sirbu, M. A. (2005). Measuring Broadbands Economic Impact. Tapper School of Business Paper 457. Shideler, D., Badasyan, N. and Taylor, L. (2007). The Economic Impact of Broadband Deployment in Kentucky. Regional Economic Development, 3(2), pp. 88–118.
10
Economic Impacts of Lack of Coordination in the Governance of Public Policies Riccardo Boero
10.1
Introduction
The governance of a public policy often requires the contribution of several completely different actors.1 In general, public policies call for an active role not only from policy decision-makers but also from all stakeholders (from citizens to firms). Among the many actors involved in policy-making and implementation, it is often the case that interests and aims diverge. For instance, unsurprisingly, representatives of different economic activities often have different opinions and opposite incentives, as do citizens. Whenever interests diverge, the ultimate success of a public policy resides in the coordination of the players involved. Coordination dilemmas emerging from the governance of public policies have been focused on by several disciplinary traditions, in particular by political economy. However, estimations of the economic impacts of failures in such dilemmas are rare, and they are usually constituted by acknowledging the failure of the policy, that is to say by the mere fact of not accomplishing policy goals. In this chapter we address the open issue of the estimation of the economic impacts of coordination failures involved in the implementation of a public policy by using agent-based models to study a regional economy, how different governments interact, and how those interactions impact on the local economy. Our focus is on the dilemma of vertical coordination among different layers of government and on economic public policies. Our case study refers to the economy of an Italian region called Piedmont. 161
162
Riccardo Boero
10.2 The challenge of vertical coordination among layers of government As mentioned above, the governance of any policy gives raise to coordination problems among actors involved during the different phases of the policy life cycle. Because of the leading role of government in public policy development and implementation, it is often assumed that governments should play a coordinating role among all stakeholders. However, it can happen that more than one government or governmental organization participate in the policy process: in such a case the bodies which ultimately are responsible for the policy can face a further coordination problem, not with private sector stakeholders but among themselves. Coordination among governments often needs to be both horizontal and vertical. A good example of those two kinds of interactions are policies in the European Union (and in the United States): vertical coordination is required, for instance, between the European Commission (Federal Government) and a state, while states must often horizontally (i.e., at the same level of government) coordinate themselves because of the high level of interdependence. Furthermore, processes of decentralization of authority and of creation of transnational authorities have spread during last decades. Every day, decentralization makes vertical and horizontal coordination problems more common in multi-level governance (Hooghe and Marks, 2001). In this work we focus on vertical coordination among different levels of government, and we estimate the possible economic impact of failures in coordination. But first it is important to discuss the two kinds of reasons for coordination to be difficult. The first kind of reason threatening vertical coordination is the possible existence in policy- makers at different levels of different opinions, of different party affiliation, and even of rivalries among them in their professional careers. Those reasons can happen anytime and anywhere, but they can also be moderated by counter measures such as accountability. A completely different kind of reason threatening vertical coordination efforts is much more important and “structural”. Descending from the definition of vertical coordination, different levels of government are accountable to different constituencies, only partially overlapping. It means that policy-makers represent partially different interests, and it implies that there is space for the emergence of a coordination dilemma where actors have different, often conflicting, interests.
Economic Impacts of Lack of Public Coordination 163
Summarizing, vertical coordination dilemmas derive from the presence of policy-makers who are held accountable by different and only partially overlapping constituencies.
10.3 A case study on public policies in Italian local governments In order to evaluate the economic impacts of vertical coordination, we needed to identify a case study and to select a methodology to effectively carry out our task. The following paragraphs introduce and discuss the data and the methodology used. 10.3.1
Research questions and methodology
Our main focus was on the estimation of the economic impacts of vertical coordination in policy governance and thus we first needed to identify an empirical economy to study. The case study we selected was the economy of Piedmont, an Italian region (at EU administrative level (NUTS)-2, i.e., the level just below the nation-state) which comprises eight provinces, NUTS-3- level governments. For our analysis we focused on the regional economy and on regional policy-makers for the upper level, and for the lower level economy and government we selected Turin, most important province in terms of population and economic activities. The selection of only one province among the eight composing the region is required in order to focus our attention on vertical coordination and to filter out issues related to horizontal coordination. The case study provides some interesting features we were looking for. Firstly, although the upper level entirely contains the lower level, the lower level is not big enough to completely influence the upper level. In fact the province of Turin only covers 27% of the regional area yet it accounts for 52% of the regional population. This difference is confirmed by electoral results: in recent decades the norm in the two levels has been administrations with opposing political affiliations. Secondly, the selected case presents some important similarities between the two levels of analysis. In particular, the economic structures of the region and of the province are both old industry, and both face the difficult challenges posed by globalization and tertiarization. Moreover, both levels of government have similar constraints; like all levels of government in Italy below the national level, both of them lack fiscal autonomy and heavily depend on funding from the national government and the EU. Furthermore, they are both mostly involved
164 Riccardo Boero
in matters of exclusive competence defined within constitutional and ordinary laws in order to avoid vertical coordination problems, but they have a consistent overlapping of competences and policies in the field of economic intervention, which is thus a suitable policy for our analysis. Having described our case study, we can now restate the research aim presented at the beginning of this paragraph with a more specific research question: we intend to study the vertical coordination of governance and to estimate its economic impacts referring to the interactions between the governments of the region of Piedmont and the province of Turin in the governance of economic public policies. In order to answer our research question we rely on two agent-based models. The first is a data-driven model of the regional economy that allows the evaluation of the impact of public policies by both levels of government with a high level of detail, both industrial and spatial. The second is an interaction model that allows the testing of hypothetical but plausible behavior of the two levels of governments and that presents the outcome of interaction in terms of economic impacts computed by the first model. In conclusion, we need three main ingredients to address our research question: a large and comprehensive amount of data about our case study, a model capable of measuring the economic impacts of governments choices by an accurate and validated modeling of local economies, and a model to study the interactions between governments. 10.3.2
An agent-based model of the local economy
In order to model the local economy, we use an agent-based model extensively described in Boero (2012) and introduced in the preceding chapter. It is an improved version of an input–output agent-based model of regional economies (for previous versions of the model, see Boero (2006a, 2006b)) based upon a very large amount of empirical data, and it has been validated by precisely replicating the last decade of evolution of the regional economy in focus. The agent-based model relies on an approach deeply embedded in National Accounts as a source of information about the economy and on input–output matrixes (Leontiev, 1986; Ten Raa, 2005) as a source of information about the technology implemented by economic agents. Its agent-based nature, furthermore, allows the enrichment of the standard input–output approach with more details and heterogeneity in both economic agents and in their interaction. The usage of an agent-based model for describing the local economy here overcomes the limitations imposed by the statistical
Economic Impacts of Lack of Public Coordination 165
relationship-oriented focus of micro-econometric models and the aggregate nature of macroeconomic models of regional economies thanks to the high level of detail in describing economic agents heterogeneity in terms of size, location, production process, and interaction. The model is populated by two kinds of agents. The first kind refers to households who provide production factors for the economy; it is composed of 1,206 agents, each one representing the households present in one of the 1,206 municipalities in the region. The second one is constituted of about 500,000 agents that represent economic establishments (thus enabling the highest level of detail, higher than by using firms), and that are characterized by three elements: their location in space, their sector (according to their main economic activity), and their size in terms of employees. The data about establishments and their characteristics (location, sector, and size) is available in the Archivio Statistico delle Imprese Attive (ASIA) provided by the national statistical office of Italy (ISTAT). That database is incomplete for two important sectors (agriculture and government), but it has been integrated with relevant information derived from the Survey of Agricultural Activities (Censimento dell’Agricoltura – ISTAT), from national and regional official accounts (the national and regional consolidated accounts of public administrations – ISTAT) and from data about local governments balance sheets (the Italian Ministry of Home Affairs). Furthermore, the model includes a set of five exogenous variables. Two of these concern behavioral aspects of economic agents; they are the marginal propensity to consume and the productivity of labor. The other three exogenous variables are needed for two reasons: firstly, the local economy in focus here is not a closed system but, on the contrary, is embedded in the national, European, and global economies; secondly, investments and government spending are not usually directly connected to the short-term and dispersed economic transactions in focus here. Those three remaining exogenous variables thus are exports, investments and government final demands, and they are usually collectively known as exogenous components of the aggregate demand. All exogenous variables can be derived from the official spatially and industrially referred data published by ISTAT. However, the exogeneity of public spending is crucial in order to integrate this model of the economy with the one presented later in this chapter regarding the interactions among governments. The main data source for the description of the behavior of agents in the model is constituted by input–output tables of the regional
166
Riccardo Boero
economy in 2005. Input–output tables present an aggregate description of the supply and demand processes implemented by economic agents in the area. In particular, the columns of the input–output table display, by sector, the production process in terms of requirements of factors (capital and labor) and of intermediate goods and services. Furthermore, dividing each column by the total number of employees in the area in that sector allows the production function for the average employee of that sector to be derived. Finally, knowing the size, in terms of employment, of each establishment in the area, a production function for each establishment can also be computed. The production function is the main behavioral rule followed by agents in this model because it explicitly allows the computing of inter-industrial requirements according to the adopted technology and the consideration of output and value-added formation and constraints. The production function provides agents with most of the behavior they need, but it nevertheless lacks a part about interaction that is relevant. The production function (which is, according to the input–output approach, also a consumption function of intermediate goods) allows computation of the amount of intermediate goods and services required to complete a production process, but it does not define which establishments have to provide those intermediate goods and services. It is therefore important to model the interaction between agents that leads to the establishment of supply relationships. In other words, the information about intermediate goods tells us that each agent receiving a final or intermediate demand has to buy intermediate goods and services in order to start the production process. However many suppliers for each sector are present in the region, and thus the question becomes from whom to buy the desired intermediate good. The behavior regulating this activity (i.e., supply chain formation) follows two guidelines: 1. An agent can not easily increase the amount of production over its production capability defined by its size (the number of employees and their productivity derived from the input–output table). 2. Neighboring suppliers have higher probabilities of being selected because their positioning decreases transportation and transaction costs; an agent looking for a supplier in a specific sector is more likely to choose one which is spatially nearby, if available, than one located at the other side of the region.
Economic Impacts of Lack of Public Coordination 167
The first guideline can easily be implemented by not allowing agents to over produce unless all agents in the region are already saturated; and the second guideline has been implemented by selecting suppliers in increasing order of spatial distance. In particular, as a measure of spatial proximity, road distances have been used because straight-line distances carry over several implausible interactions because of the widespread presence of parallel alpine valleys in the region (mountains cover 43% of Piedmont region area). Finally, agents representing households who provide production factors to local establishments receive remuneration for the production factors which have been used, and they partially spend it on final goods. In other words, we assume that labor and capital (the two production factors) are owned by families in the region, and that their remuneration (payments for labor and value added) is partially spent in the region and abroad as final demand, according to what is commonly called the consumption multiplier. The data source for that behavior is the exogenous variable provided by regional accounts, which records the share of income consumed – usually called the marginal propensity to consume – and its distribution across local sectors and abroad. The model as briefly described here implies several assumptions and has several limitations. For instance, it is ready to be used for exploring variations in exogenous variables, but changes in the internal structure, which is entirely based on empirical observations, require explicit additions and modifications to the model. To make the point clearer, the model is not immediately suitable for the evaluation of the impacts of technological change unless an explicit modeling of such a change is added, but on the other hand the model can immediately be used to evaluate global shocks in regional exports. There are many other implicit assumptions in the model that must be taken into consideration when using it. For our purposes, the three most important are these: 1. Fiscal pressure remains constant over the level recorded in 2005, that is, the amount of taxes net of transfers from the government remains at the same share of GDP (although its absolute value may vary). 2. Similarly, the share of imports over GDP remains constant, at the level registered in 2005. 3. The labor market is completely flexible, that is to say that the model increases or decreases by the amount of employed labor without considering rigidities due to contracts and social protection.
168
Riccardo Boero
Finally, further modification has been introduced in agents behavior in order to allow the simulation of the model to reach a solution in a reasonable computing time: a threshold is set for stopping the process of distribution of intermediate goods provision orders and for final consumption orders by the regional population. That is, orders for provisions are diffused only if their total amount is more than €1. This threshold means an approximation, and a reduction of the precision of the model, but that is largely compensated by the reduction in the time of computation. The model has been validated for data in the period 2000–2009 (for details see, Boero (2012)). It is of particular interest to note that the model assumes the technology to be constant except for labor productivity, and that the validation assumes this as well. The slow evolution of technological change in the region has been confirmed by other studies (e.g., Russo and Cassetta, 2012), but it is worth stressing that this is not always the case in other regions and in other periods. Furthermore, as Figure 10.1 testifies, the replication of the actual economic data from 2000–2009 is excellent even at the local (sub-region) level. In fact the figure presents real and simulated time series of the
2.2 2 Millions of employees
1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0 2000
2001
2002
2003
2004
Piedmot REAL Piedmot SIM
2005
2006
2007
2008
2009
Turin REAL Turin SIM
Figure 10.1 Real and simulated (SIM) number of employees in Piedmont region and Turin province over time
Economic Impacts of Lack of Public Coordination 169
number of employees for both the whole region and the province of Turin alone. At the regional level, the correlation coefficients between simulated and actual time series are 0.99 for GDP (significance level: 0.000) and 0.87 for employment (significance level: 0.001). 10.3.3 The coordination dilemma Both the region and the province have autonomous governments, elected by similar procedures, based on proportional representation – but they differ by the fact that the president of the province is chosen with a two-round system if an absolute majority is not reached in the first ballot, while the president of the region is the person who wins most votes in a unique ballot. As mentioned before the Piedmont region spatially encloses the province of Turin (plus other provinces) and that is also true for constituencies; thus constituencies are different although partially the same. The constituency of Turin province is also a constituency of the Piedmont region but only about half of the constituency of the Piedmont region is also a constituency of Turin province. The fact that there are different constituencies increases the chances of their having governments with different opinions and priorities. Because of the possibility of problems in the vertical coordination among levels of government, constitutional and ordinary laws in the Italian system identify matters of exclusive responsibility for different levels of government, from the nation-state via regions and provinces to municipalities. However, the list of matters of exclusive responsibility is not exhaustive, and thus our attention is on matters where vertical overlapping is possible. Among those, we focus on policies about economic development after an exhaustive analysis of local government balance sheets as published by the Italian Ministry of Home Affairs and by ISTAT. In particular, Table 10.1 shows the average annual expenditure in 2000– 2008 for the two governments considered here, according to the reason for the expenditure. As well as “Management” which refers to local government administrative costs, there are items of exclusive responsibility. For instance, in Italy the public health system is managed by the regions, and public schools, high schools especially, by the provinces. Other categories of expenditure overlap to some degree, such as public transport which both governments operate but in different ways; the region is responsible for supporting public transport over longer, inter-provincial routes while the province focuses on the routes within its own area.
170 Riccardo Boero
For those reasons, the only truly overlapping policy is that of economic development and, as shown in Table 10.1 and Figure 10.2, significant and increasing amounts of resources have been spent on it by the two local governments. As mentioned earlier, the structural reason why there can be a problem of coordination between the two governments is due to the fact that Table 10.1 Average annual values of local government expenditure between 2000 and 2008, Piedmont region and Turin province Piedmont region
Turin province
Percentage Value of total (millions budget of euro) Purpose
Purpose
Public health 80.1% system Public 5.8% transportation
Management Economic development Others
Percentage Value of total (millions budget of euro)
6,040.19
Public schools
11.6%
41.94
452.70
Public transportation and environment Management Economic development Others
29.1%
98.59
20.0% 33.5%
71.43 126.78
5.8%
20.95
3.8% 4.7%
285.98 352.88
5.6%
444.89
500 450
Millions of euro
400 350 300 250 200 150 100 50 0 2000
2001
2002
2003
Turin province
2004
2005
2006
2007
2008
Piedmont region
Figure 10.2 Public expenditure in economic development in Piedmont region and Turin province over time
Economic Impacts of Lack of Public Coordination 171
they have different constituencies even though the one includes the other. Because governments are held accountable by different constituencies, it is possible that needs and opinions are different and thus that policy-makers are required to take contradictory decisions. There are two further elements that increase the probability of problems in coordination. Firstly, the resources spent by the two governments on economic development policies are comparable in terms of size (see Table 10.1), particularly if considering that the amount spent by the region only partially addresses issues in the Turin province, which has roughly half the population and economic activity of the region of Piedmont Secondly, since the beginning of the 1990s the political debate at both regional and provincial levels has been polarized by what could be called the “dilemma of tertiarization”, with important consequences for public policies on economic development. In order to discuss this and to stress the importance of that debate for our research question, it is worth allocating some space to describing the economic structure of the area. The area is characterized by the presence of its manufacturing activities established over a century ago. Consider motor vehicle production in the province of Turin and the textile industry in Biella, another province of Piedmont. For a number of reasons including globalization, such traditional manufacturing activities have not been capable of guaranteeing economic growth in the region in recent decades, whereas other activities such as the manufacture of food products and several activities generated by the service sector have emerged as drivers of economic growth. As Figure 10.3 shows, the number of employees in Piedmont in two traditional sectors such as motor vehicle production and textiles shows a steady decrease over time. But accommodation and food services in the same period, as a proxy of tourism services, show a completely different dynamics. In summary, the problem discussed in the political debate and faced by policy-makers engaged in the design and implementation of policies supporting economic development has been whether to use resources to support relevant traditional sectors or emerging economic activities. As the concentration of those two kinds of activities is similar but not equal in the two areas, the focus on innovative versus traditional sectors is potentially a further area of disagreement between levels of government. 10.3.4
An agent-based model of coordination
In order to study the dilemma of vertical coordination, we built a second agent-based model in which the two levels of government decide how
172
Riccardo Boero 100
Thousands of employees
90 80 70 60 50 40 30 20 10 0 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 Motor vehicles and parts manufacturing Accomodation and food services Textile and textile products mills Figure 10.3
Number of employees in Piedmont in three industries, 2000–2010
much support to allocate to innovative or traditional economic activities, given their budget constraints. The economic consequences of their decisions are computed for both areas by means of the agent-based model of local economies described above. The agent-based model of coordination considers the governments space of decision as discrete, that is to say as a percentage value of support to traditional sectors, going from 0% to 100% of the budget for economic development, in steps of 5% (so there are 21 possible choices for every level of government). Obviously, the amount of support for innovative activities complements that for traditional ones, so that if the support for traditional sectors is 40%, the support for innovative industries will be 60%. Furthermore, decisions made by governments propagate into the economy as they derive from the final demands of local governments; here, their policies take the form of public spending. We are aware that public policies can take many forms, but to simplify our analysis we focus on the increase of output demanded. Because we are keeping all other variables constant, the only difference is due to how governments decide to cut the cake they have at disposal when making policies for economic development.
Economic Impacts of Lack of Public Coordination 173
Thus, government final demand is kept constant at the national and municipal level, as is the regional and provincial one for the parts of the budget that do not concern economic development. Similarly, all other economic variables are kept constant, and calibrated to the empirical values observed in 2009. The model, developed in Netlogo, presents the space of government interaction over a bidimensional grid made up of 441 points that represent every combination of the 21 possible decisions that can be made by each of the two governments. For each point, that is, for each combination of choices by the two governments, the amount of employment activated in the region and in the province has been computed with the agent-based model of the local economy described above. It is then possible to plot the levels of regional and provincial employment in the conjoint decision space in order to verify where higher levels of employment are located. Figure 10.4 sets out the decision space resulting from the models we developed. The figure is divided into two, with the same decision space but on the left the associated employment levels for Piedmont region and on the right those of Turin province. The darker the shading, the lower the levels of employment. Black circles represent combinations of decisions by the two local governments. The horizontal axes represent decisions by the regional government, and the vertical axis decisions by the provincial government. From left to right and from the bottom to the point, each point represents a percentage of increasing support of traditional activities from 0% to 100% in 5% steps. (a)
(b)
Figure 10.4 Impacts of different choices by local governments on regional (a) and provincial (b) employment (lower levels of employment are darker)
174
Riccardo Boero
Thus the circle is at bottom left when neither of the governments supports traditional activities (0%) and both fully support innovative sectors. The circle at the bottom right represents the regional government fully supporting traditional sectors (100%) and the provincial government not supporting them (0%). The circle at top left is the direct opposite, the provincial government fully supporting traditional sectors (100%) and the regional government not supporting them (0%). Finally, the circle at top right is the case when both governments fully support traditional industries (100%). The impacts on employment shown in Figure 10.4 raise several interesting points for discussion. First, it is clear that the resulting impacts are very similar as the province accounts for about half of the region and because the rest of the region shares similar economic characteristics. Furthermore, it is evident how innovative industries (which, it is important to recall, are defined as innovative only because they are not part of the traditional activities once predominant in the area), have higher levels of employment, and that is probably the reason why they are emerging today as the drivers of economic growth. Moreover, due to the size of the amount of resources and to possible spillover effects from nearby provinces in the region, it is interesting to note how the impact of regional policies is greater than that of provincial policies. Figure 10.4 shows that differences in impacts along the horizontal axis (regional-level choices), are greater than those on the vertical axis (decisions at provincial level). However, the lowest levels of employment for both areas are found in the middle of the horizontal axis and across the vertical one, making it difficult for the regional policy-maker to radically shift the focus from traditional to innovative activities. Finally, analyzing the data on the highest and the lowest levels of employment, it is possible to estimate the maximum impact of coordination on employment, assuming that in the worst case the lack of coordination can lead to the lowest level of employment and that successful vertical coordination can lead to the highest level of employment. At the regional level of analysis, the difference between the highest and the lowest outcome is 7,806 job places, accounting for 0.4% of the employees in the reference year (2009). At the provincial level, the difference is 6,028 jobs, representing 0.6% of the employed workforce in 2009. The final elements of the coordination model concern the modification of the sector in which employees work and the accountability mechanism to which governments are subject. First, we are focusing on dynamics of coordination that take place over time, so it is plausible that
Economic Impacts of Lack of Public Coordination 175
changes in decisions by governments do not only affect aggregate values of employment, that is, create more or fewer job places, but also affect the distribution of job places across sectors. For the sake of simplicity we consider only two macro sectors, traditional and innovative activities, although the agent-based model of the economy considers more than 20 different sectors. Second, we introduce in the model a parameter that we call “cost of transfer between sectors”, that is, the social and economic cost that has to be paid in order to reassign a worker from a traditional activity to an innovative sector and vice versa in a symmetrical way. The cost of transfer between sectors can assume values from 0 to 1: 0 means that there are no social and economic costs in transferring employees between innovative and traditional industries; 1 means that the cost of transferring one employee across sectors perfectly balances the gain derived from creating a new job. It is indeed realistic to think that such cost could also overcome the gain from job creation, taking values greater than 1; however we keep that parameter bounded upwards because such a possibility does not affect the results of the analysis that follows. We also introduce in the model a dynamic behavior based on accountability principles by which governments do not take decisions that negatively affect their constituencies. Governments, in a dynamical way and relative to whereabouts in the decision space they are located, change the implementation of their economic policy towards traditional or innovative sectors in order to increase the amount of job places in their area of reference as much as possible. In particular, governments can only make small changes at once, that is to say that on every simulation tick they can modify their decision by only 5%. In other words, governments can only move from one particular circle in the decision space in Figure 10.4 to one of the neighboring circles. Furthermore, governments “move” to the decision represented by the neighboring circle that in their area of reference maximizes the increase of job places net of any eventual social and economic costs.
10.4 Results: dynamics and impacts of vertical coordination The model of coordination as described above allows the representation and study of coordination and policy implementation in a decision space like the one shown in Figure 10.4. In Figure 10.5 the same decision space is presented, along with possible paths of decision-making and coordination. In particular, on the left of the figure is the case when there is no coordination between
176 (a)
Riccardo Boero (b)
Figure 10.5 Possible decision-making paths with a transfer cost between sectors equal to 1 (uncoordinated governments on (a), coordinated governments on (b))
governments and thus only the von Neumann neighborhood is considered. In fact, if governments do not cooperate, changes in the decisions made by the two governments can happen only because either the regional government moves horizontally or the provincial government moves vertically within the decision space. Both governments behave according to the accountability mechanism just described (i.e., changes happen only if they benefit the respective constituency). The possible decision- making paths presented on Figure 10.5a intuitively point out how difficult it could be for governments to converge to the global optimum, located in the bottom left corner. The resulting labyrinth, in fact, is full of dead ends representing local optima or suboptimal equilibria, without any opportunity for governments to turn back, except by decreasing job places in their economy. Figure 10.5b shows the possible decision- making paths when shortterm coordination exists between governments; this is the case when governments can coordinate and simultaneously make a change in both their policies to improve their economies. The resulting paths consider Moore neighborhoods, because diagonal movements in the decision space are also possible, as changes can happen simultaneously in both governments due to coordination. As one might expect, this latter labyrinth has a greater density of paths, but it nevertheless has several “holes” and local optima. The decision space resulting from the coordination model is due to the behavioral modeling of governments according to principles of
Economic Impacts of Lack of Public Coordination 177
accountability and to the assumption of incomplete information that makes it impossible for governments to quickly jump to distant positions in the decision space. However, the possibility of coordination among governments strongly affects the numbers and positions of local optima. Figure 10.6 shows the number of local optima in the decision space over the value of the parameter representing the cost of transferring employees across sectors. The data in the figure refers to the case when governments act in an uncoordinated way. The evidence is twofold: an increase in transfer costs means an increase in the number of unfeasible paths, thus an increase in the number of local optima. For higher values of the transfer cost between sectors, the Piedmont region is more strongly affected than Turin province. Figure 10.7 presents the same data, but in the case when governments can coordinate their decisions. The resulting decision space presents far fewer local optima than the case of uncoordinated behavior (less than half of those in Figure 10.6), for any value of the transfer cost. Furthermore, the difference in the number of local optima between the two governments shows similar dynamics, but it is significantly different, even at lower values of transfer costs. Local optima represent sub-optimal equilibria when local governments get stuck during the exploration of the decision space. The global 250 225 200 175 150 125 100 75 50 25 0 0
0.1
0.2
0.3 0.4 0.5 0.6 0.7 Cost of transfers across sectors Piedmont region
0.8
0.9
1
Turin province
Figure 10.6 Number of local optima in the decision space over cost of transferring employees across sectors in the absence of coordination among levels of government
178 Riccardo Boero 100
75
50
25
0 0
0.1
0.2
0.3 0.4 0.5 0.6 0.7 Cost of transfers across sectors Piedmont region
0.8
0.9
1
Turin province
Figure 10.7 Number of local optima in the decision space over cost of transferring employees across sectors in the presence of coordination between governments
optimum, it is worth remembering, is only 1 and it corresponds to the decision by both governments to fully support only innovative sectors. Furthermore, the decision space resembles, from many perspectives, an NK network (Kauffman, 1996), and NK networks have already been effectively used to study complex and rugged solution spaces in policymaking and societal transitions (e.g., Alkemade et al., 2009). However, the analysis here does not follow the common methodology for NK networks analysis, but the agent-based approach, because here we are focusing on coordination and interaction between agents. We thus run the model hundreds of time in order to explore the effects of different hypotheses, and assign a different starting point each time in the decision space. In particular, the results that follow are average values obtained from 441 runs2 of the model in which the starting point in the decision space is always different, and the data is recorded after 40 decision-making runs.3 Figure 10.8 presents the average length of interaction between governments over an increasing transfer cost of employees between sectors. When the model runs, the action of governments according to the accountability principle makes the system move in the decision space until it stops in a local optimum for both governments or
Economic Impacts of Lack of Public Coordination 179 3.5 3 2.5 2 1.5 1 0.5 0 0
0.1
0.2
0.3 0.4 0.5 0.6 0.7 Cost of transfers across sectors
Without coordination Figure 10.8
0.8
0.9
1
With coordination
Average length of decision-making paths over transfer costs
it stops in an infinite loop between two neighboring positions which are local optima for each of the two governments. As the figure makes clear, when coordination is at work the decision-making paths are longer, which suggests that the system reaches a better equilibrium in terms of employment. Furthermore, as the transfer cost increases and the number of possible paths decreases, the average length of paths decreases as well. Figure 10.9 confirms the positive impact of coordination on regional employment activated by government policies. In fact the figure presents the distance from the global optimum in terms of the relative loss of job places in the equilibrium achieved. Two principal results can be derived from Figure 10.9. Firstly, coordination reduces the distance significantly and thus activates more jobs. Secondly, coordination almost neutralizes the loss of jobs due to high social and economic costs in moving employees across sectors, as evidenced by the fact that the line representing the outcome of governments coordinated interaction does not rise when transfer costs increase. Results for employment in the Turin province are given in Figure 10.10, and they confirm what was said before for regional employment, although the positive effect of coordination over increasing transfer costs seems slightly reduced.
180
Riccardo Boero
2,300 2,200 2,100 2,000 1,900 1,800 1,700 0
0.1
0.2
0.3 0.4 0.5 0.6 0.7 Cost of transfers across sectors
Without coordination
0.8
0.9
1
With coordination
Figure 10.9 Average loss of job places compared with the global optimum at the regional level
1,800 1,700 1,600 1,500 1,400 1,300 1,200 0
0.1
0.2
0.3 0.4 0.5 0.6 0.7 Cost of transfers across sectors
Without coordination
0.8
0.9
1
With coordination
Figure 10.10 Average loss of job places compared with the global optimum at the provincial level
Economic Impacts of Lack of Public Coordination 181
10.5
Conclusions
This chapter has presented an analysis of the economic impacts of coordination across the vertical levels of governments engaged in the governance of public policies. The analysis is based on a case study of two local governments in Italy and on loosely defined public policies aimed at supporting economic development. The analysis relies on two agent-based models. The first is useful for studying the economic impacts of policy decisions with a high level of spatial and industrial detail, and it allows geographic impacts to be separated and public policies to be effectively modeled. The second agentbased model is useful in the study of the interaction of different levels of government. The main outcome of the analysis is that although coordination significantly impacts the economy, it is difficult to establish and maintain. Some obstacles to vertical coordination are structural and are difficult to manage, unless there are institutional improvements of the democratic process by which local governments are held accountable by their respective constituencies. Good examples of that kind of threat to coordination are a short-sighted accountability by the constituency and a short time horizon by elected politicians, as already made clear in the extensive literature on political economy. A further element emerged as a determinant of the economic impacts of vertical coordination: it is the knowledge of the possible choices that can be made and their consequences. In the coordination model, in fact, we assumed that governments can evaluate choices and consequences of such choices only for the immediate neighborhood of their location, following path dependence. In fact, governments could only choose to modify their previous decisions slightly, and were aware of the consequences of such modifications, either because the new situations were not too dissimilar to some already known or from trial and error. In other words, governments acquire knowledge only by means of directly experiencing different options, and they are not prone to taking on the risk of exploring radically different solutions. However, from our analysis we know that there is a global optimum in terms of maximum levels of employment at both geographic levels, and that it is impossible to reach this from many positions in the decision space. Thus, such an optimal solution calls for a sort of longer-term coordination and commitment of levels of government that could allow the development of decision paths and even “jumps” in the decision space aimed at overcoming the problem of getting stuck in local optima.
182
Riccardo Boero
Similarly to what was said before, longer-term coordination among different levels of government presents several structural and significant obstacles due to the relationship between policy- makers and their constituencies, but it also introduces the key problem of knowledge. In fact, longer-term coordination requires perfect knowledge of the decision space and of the economic impacts of every possible decision taken by any level of government. We believe that agent-based models are perfect candidates for this difficult task because of their capability to model different dynamics, as shown in this chapter, where they were used to model both economic dynamics and interaction dynamics, and to conduct what-if analyses that can inform decisions and policy-making.
Notes 1. The author gratefully acknowledges financial support from Regione Piemonte, Project ICT4LAW. 2. 441 is the number of possible combinations of decisions between the two governments, arising from the fact that each one has 21 options, because it can choose the amount of support of traditional sectors in the range 0–100% with increases of 5%. 3. Simulations verified that after 40 runs the exploration of the decision space had always been concluded.
References Alkemade, F., Frenken, K., Hekkert, M. P. and Schwoon, M. (2009). A complex Systems Methodology to Transition Management. Journal of Evolutionary Economics, 19(4), pp. 527–543. Boero, R. (2006a). Dinamiche espansive del settore ict in piemonte: alcune analisi esplorative tramite simulazioni basate su agenti. Tech. rep., Technical report, IRES Piemonte, Torino, Italy. Boero, R. (2006b). Un modello dell’economia piemontese come sistema complesso: interdipendenze economiche e territoriali tra centro e periferia. In G. Russo and P. Terna, eds, Produrre a Torino: atti della conferenza Rota 2005. Edizioni Otto, Torino, Italy. Boero, R. (2012). Short and Medium Term Evolution of a Regional Economy after the Crisis: Forecasting the Near Future of Piedmont with an Agent-based Input Output Model. In G. Russo and P. Terna, eds, Innovare in Piemonte. Edizioni Otto, Torino, Italy. Hooghe, L. and Marks, G. (2001). Types of Multi-level Governance. European Integration Online Papers (EIoP), 5(11). Kauffman, S. (1996). At Home in the Universe: The Search for the Laws of Selforganization and Complexity. Oxford University Press, Oxford, UK. Leontiev, W. (1986). Input Output Economics. Oxford University Press, Oxford, UK.
Economic Impacts of Lack of Public Coordination 183 Russo, G. and Cassetta, S. (2012). Crescita e innovazione in Piemonte attraverso una lettura comparata di tavole Input–Output. In G. Russo and P. Terna, eds, Innovare in Piemonte. Edizioni Otto, Torino, Italy. Ten Raa, T. (2005). The Economics of Input– Output Analysis. Cambridge University Press, Cambridge, UK.
11
Agent-based Dynamic Optimization of Fiscal Systems Matteo Morini and Simone Pellegrino
11.1 11.1.1
Introduction Tax system optimization
A heterogeneous population of taxpayers can be represented in detail by an agent-based model of individuals characterized by disparate features such as working status, gross income, marital status, and the number of any dependent children. A system of income taxation, often consisting of an intricate set of rules, can also be modeled and rendered, more or less simply, as a function that transforms many input values, the individual gross income combined with the system parameters, into a monetary value: the amount of tax due, or the net individual income. A combination of the information available allows aggregated indices of interest, spanning from macroeconomic indicators – total tax income or average tax rate – to equity indicators, such as a measure of the redistributive effect, to be correctly determined for any given scenario, be it a real-world or a simulated one. Trimming the tax system parameters, to be seen as independent variables, results in measurable effects on the subsequent quantities, which allows for ex-ante evaluations of potential reforms. A detailed ABM of a European country fiscal system, conjoined with an optimization tool – genetic algorithms in this case – can be used to reach a political goal. This exercise is aimed at the maximization of the redistributive effect of personal income taxation, which makes this chapter of particular interest to political economists, welfare economists, and policy makers.
184
Agent-based Dynamic Optimization of Fiscal Systems
11.1.2
185
Case in point: Italy’s personal income tax
Every mature personal income tax (PIT) system is often described by a sophisticated, sometimes convoluted structure of marginal tax rates, thresholds and credits, allowances, deductions, plus more exceptions and ad-hoc minor rules. A given tax structure coupled with an income distribution results in a tax revenue, also implying a redistributive effect on the individual incomes. It is often the case that a government puts in place tax policies intended to attain specific goals: to name a few, an increase in households’ purchasing power; an increase in the redistributive effect of the tax without changing the total revenue; an increase in the tax revenue targeting a specific group of taxpayers (e.g., the richest). The PIT structure of a given country, observed at a selected point in time, often results from the accumulation of several incremental adjustments which have occurred over time, aimed at pursuing oft-changing objectives, sometimes over the long run, sometimes to face sudden critical situations. Whether such accretion of incremental policymaking made by fine (sometimes coarse) tuning leads to hitting a given target in the best way, without trading off desirable features, is debatable, to say the least. How should the tax system structure be trimmed in order to consistently achieve such targets? The proposal contained in our exercise consists of an all-round approach on the system structure parameters as a whole, at the same time, without focusing on some limited area of intervention, be it marginal tax rates or deductions for – let’s say – mortgage interests. The Italian PIT case lends itself, because of its relative intricacy, to a useful exercise of this kind: in the year 2014, in an attempt to boost the national economy, a tax cut of about €10 billion was announced, in the form of a simplistic linear cash transfer to salaried individuals in the €8,000–26,000 PIT gross income range. In an earlier attempt, developed in reaction to the aftermath of the reform cited above (Morini and Pellegrino, 2014), a one-shot optimization on a static, unresponsive population had been successfully attempted, achieving a higher redistributive effect without making any taxpayer worse off: a promising result which gives a solid foundation upon which to build a more sophisticated tool capable, by resorting to an agent-based programming paradigm, of embracing and tackling a dynamical scenario.
186
Matteo Morini and Simone Pellegrino
11.2 11.2.1
The model Introducing an equity-efficiency trade-off
The solution of an optimization problem of this sort faces an obvious equity-efficiency trade-off: opting for an indiscriminate improvement of the redistributive effect (more on this in cit.), the effective marginal tax rates can and will worsen. In this exercise, we focus on the equity side of the problem, while imposing a few constraints on the tax structure applicable parameters, in order not to arrive at both trivial and inefficient solutions. 11.2.2
Beyond a static micro-simulation
The static micro-simulation model developed by Pellegrino et al. (2011) had originally and successfully been trimmed on the Bank of Italy Survey on Households’ Income and Wealth 2012 data (based on the fiscal year 2010). It makes for an invaluable instrument for empirical analysis, providing a tool to experiment with fiscal phenomena which, when compared to the official statistics made available in aggregate form by the Italian Ministry of Economics and Finance, result in an almost perfect match. A Python-based implementation of the relevant functionality1 of the original model has been rewritten from scratch, leveraging the excellent numerical libraries made available (Van Der Walt et al., 2011) for this language; the result is a very reasonable compromise between programming agility, code readability and computational performance. The model, whose input data consist of a weighted sample of people,2 including every detail relevant to the computation of their PIT, precisely applies every single tax system rule (and their numerical parameters) to individually determine post-tax incomes. Given pre-tax (actual data) and evaluations of post-tax incomes, a wealth of aggregated information can be extracted for any combination of tax system parameters. Inequality indexes (Gini coefficients, concentration coefficients) give a useful indication of the equity, expressed as the redistributive effect, of the tax system, given a set of chosen parameters. Given the aim of the exercise, to maximize the redistributive effect (without departing from a set tax revenue), the relevant measure chosen is the Reynolds–Smolensky index (Reynolds and Smolensky, 1977), resulting from the difference between the pre-tax income Gini coefficient minus the post-tax concentration coefficient.
Agent-based Dynamic Optimization of Fiscal Systems
187
In order to perform a quick and effective search for reasonable solutions, the search for parameters able to satisfy the given conditions is performed by a Genetic Algorithm (Holland, 1992), where an objective function to maximize (in GA parlance, fitness function) consists of, and is evaluated by, the fiscal system model, and fed back to the algorithm. The functional form of the fitness function is simply: f ( p1 , p2 ,...., pn ) = α RS − β Tr Tr = Tr* − Tr / Tr*
α ,β > 0
(11.1)
where RS, the measure of redistribution, contributes positively to the measure of “goodness” of the set of parameters, whereas Tr the relative difference between the set tax revenue and the revenue obtained by said set of parameters, rules out unacceptable solutions, in case they produce an (excessively) different revenue. The fitness function coefficients for each one of the two variables included, α for the RS index and β for the deviation from the desired total tax income, have been duly tuned, according to the order of magnitude of each of them.3 The genetic algorithm implementation used, also written in Python, is the open-source package pyevolve, by Perone (2009), with its convenient real-coded (Herrera et al., 1998) individual functionality. 11.2.3
Responsive agents
As can be expected, economical agents tend to react to exogenous variations on their post-tax disposable income, and, when possible, perform on-the-run adjustments. Stress is laid on the actual opportunity for adjustment since salaried workers, for example, often have a chance to operate on their individual labor supply, albeit marginally, and market conditions allowing, perhaps by adjusting their overtime hours should a more favorable tax rate make a sizeable difference in their disposable income. On the other hand, retired individuals whose income is composed of their pension plus property rental stand little chance of trimming their revenue according to changes made in taxation. In our model, individuals start from a given gross income, composed of several distinct sources: self-employment, regular employment, pension, redundancy payments, other income. Flexible sources are
188
Matteo Morini and Simone Pellegrino
set aside and are only considered when calculating adjustments. The income from self-employment plus the share of salary due to overtime are considered for correction; the remaining income is ignored, because of its lower to non-existent maneuverability. Real estate property adjustment is supposed to happen on a completely different time scale, and ordinary work hours are normally a rigid contractual requirement, just like switching regimes between full time and part time, that cannot be considered a ‘marginal’ adjustment. A formal definition is in Section 11.3.1. The direction of the adjustment deserves further consideration: income and substitution effects play their role simultaneously; see, for instance, Ashenfelter and Heckman (1974). The effect of an income shift due to a PIT variation on incomes (willingness to earn) can be of either sign. For the sake of simplicity, and lacking (of course) information on each individual elasticities, but also demographic hints to give a rough estimate based on previous empirical works, for example, Aaberge and Colombino (2006), the elasticity ratio for labor supply against net income has been defined as a non-linearly decreasing function of the net income, of the form: η(Yn ) = ( −α ⋅ ln(Yn + β ) + γ ) / δ
(11.2)
which implies a marginally decreasing willingness to supply labor as the net income goes up. For a set gross income, an increase in the tax rate results in a (less than proportional) decrease in labor supply, through a contraction in disposable (net) income; this effect is mitigated for the richer. A draconian simplification where the substitution effect dominates (no backward-bending shape4), which is deemed acceptable for this kind of exercise. 11.2.4
Social-local effects: interacting agents
A further reasonable assumption, that taxpayers are not atomistic individuals, but are also members of an organized society, can be easily incorporated in our model. Interacting agents can be promptly implemented, whereas imitative behaviors result in a sizeable effect on individual adjustments to variations in net income due to changing tax rates.
Agent-based Dynamic Optimization of Fiscal Systems
189
The very existence of strong and weak social ties (family members, coworkers’ attitude) may generate herd behaviors which, in turn, determine unexpected dynamics. The dataset used does not provide us with accurate social data;5 given the limited scope of the exercise, which is to be considered a proof of concept rather than a real-world tool for fiscal policymaking, a simple rule of thumb has been introduced. A few individuals with similar working conditions (employees, autonomous workers, retired people) and similar incomes are selected, and considered a good enough proxy of the ‘social-local’ component upon which income adjustment decisions are based. A fraction of individual adjustment coefficients is based upon the ‘proxied work neighbors’, giving an overall smoothing effect on the population’s reaction to changes in tax policies.
11.3
Optimization
Departing from the above-mentioned static model, the idea developed herein is to try and (ideally) reach a steady state of some sort, where incremental income adaptations are iteratively performed by each individual until equilibrium income values are attained. Algorithmically, the process consists of a succession of optimizing and reaction phases. During the first phase, the GA explores the solutions space in search of a parameter arrangement yielding the maximum redistributive effect (measured as RS index), at the same time minimizing the deviation from the set tax revenue; during phase two, each simulated individual, facing a variation in their disposable income, responds with a shift in the gross income.6 The (different) income distribution resulting from the adjustment phase becomes part of the data set, also comprising demographic and fiscally relevant information, fed back to the GA, to optimize again, back to phase one. 11.3.1
The static model, extended
Going back to the resulting benefits of implementing an agent-based model, the individuals’ “reciprocal influence” mechanism, although admittedly simplistic, is worth analyzing in depth. Having given up on exploiting demographic information on familial relationships and geographical location for both practical reasons and
190
Matteo Morini and Simone Pellegrino
Figure 11.1
Local influences between similar agents
adherence to privacy laws,7 a more easily accessible metric to match individuals based on likelihood of reciprocal influence is, as mentioned before, similar working conditions with comparable incomes. Creating such synthetic social bonds on our data set simply consists of performing a sort by working condition and gross income, and then letting each individual exchange information with their n closer neighbors8 in this specific topology made up of income and work conditions. Individuals are randomly picked and, in turn, matched to similarly endowed “neighbors” in their vicinity. Again, the metaphorical space, see Figure 11.1, is simply a convenient way to describe how local influences are introduced in the model. After individually assessing their adjustment, following Equation 11.2, agents receive (in the style of an informal watercooler chat) data about their matches’ reactions to the newly introduced tax, and attempt to incorporate it into their own final decision. Adding a stochastic term for
Agent-based Dynamic Optimization of Fiscal Systems
191
each individual “‘influence”’, in the form of a random number drawn from a uniform distribution on the support [0,0.02],9 and adding up, the ultimate individual adjustment is determined, and is applied, given personal feasibility constraints, to the gross income to be considered during the next round of optimization. Entering an in-detail description of the amendable quota of income, as anticipated in Section 11.2.3, the process is as follows: the data set provides disaggregation information on individual incomes in the form Yi = Yσ + Yρ + Yπ + Yα + Yω
(11.3)
being the total individual gross income, decomposed in the data as its multiple sources. Were the total income Yi to be normalized to unity, the composing quotas σ, income from salaried work, ρ, income from redundancy allowances, π, taxable retirement/old age/disability pension, α, autonomous work, ω, and other taxable sources of income, largely from real estate assets, can be represented in the form 1=σ+ρ+π+α+ω
(11.4)
The quota of income resulting from work done as a salaried employee, Yσ, can be further decomposed in ordinary and extra work hours: Yσ = Yσo + Yσe
(11.5)
This information is also deductible from the data set, since, given the additive equivalence between hσ = hσo + hσe
(11.6)
and where the total worked hours, hσ and extra hours, hσe are included; obtaining the quota of extra hours and deriving the pertaining income is a simple matter of proportioning: Yσε = Yσ ( hσe / hσ )
(11.7)
192
Matteo Morini and Simone Pellegrino
In our attempt at determining the quota of income which individuals have a chance to tweak, we can only consider the amount of earnings from independent work, Yω plus10 the portion of salary earned from working extra hours, Yσe . An upper bound has also been imposed on the maximum amount of extra hours an employee is allowed to work, in order to curb divergent behaviors which may exceed real-world contractual and practical constraints. 11.3.2
Exploring the solutions space
As the iterative process between tax structure optimization and the agents’ reaction phase develops, the GA attempts to reach a viable11 approximation of its goal. With a reasonably sized population (200–500 genomes), more than acceptable solutions begin to appear within a few hundred generations: this is shown clearly in Figure 11.2, where the minimum, mean and maximum fitnesses are measured on each evolutionary step. Qualitatively, there is almost no room for further refinement; a more quantitative measure – population convergence, well above 90% – also confirms that impression.
11.4
The dynamically optimized in-equilibrium scenario
A run of the model resulted in a slow dampening of the oscillations in the observed values found, due to reactions and counter-reactions to alternate increases and decreases in the amount of taxes paid by each individual. After a mere 50 adjustment/reaction cycles each consisting of 100 optimizing generations, in a total of 5,000 GA generations the tax system parameters seemingly reached a state where only minimum fluctuating adjustments were performed on behalf of the individuals. Figure 11.3 hints at the process, although qualitatively. Nevertheless, minor adjustments are still in progress, since the stochastic search algorithm can reach highly fit solutions which differ (sometimes considerably) in their parameter combinations, intuitively spaced far away in the solutions space. In Tables 11.1 and 11.2, a summary of the results of an optimization process applied to a reactive/adaptive population has been included. Offering a detailed commentary of the economic implications of the ensuing tax structure is outside the scope of this exercise.
193
Agent-based Dynamic Optimization of Fiscal Systems
Raw fitness value
3,000
1,000 0 −1,000
−3,000 0
50
100
150
200
250
Generation Figure 11.2 Optimization example. Minimum, mean and (in bold) maximum raw fitness values
0.5400 RS
Total tax income
1.488e+11
1.484e+11 0.5396
0.5392
1.480e+11 0
10
20
30
40
50
O−R cycle
Figure 11.3 Total tax income (bold line) and RS index time series. Optimizationreaction cycles
From an optimization point of view, however, we can confidently assume that, although this was a rather artificial and simplistic assumption on the dynamics of individuals’ reactions, we managed to reach a parameters configuration which, mapped onto the simulated tax system, represents a viable and robust solution even in the longer run.
194
Matteo Morini and Simone Pellegrino
Table 11.1 Best fit individual after dynamic optimization. Decoded values Parameter IND# fitness gettito_run RS scostam_gettito aliq_1 aliq_2 aliq_3 aliq_4 aliq_5 lim_sup_1 lim_sup_2 lim_sup_3 lim_sup_4 livello_esenzione_dipendenti livello_esenzione_pensionati_giovani livello_esenzione_pensionati_vecchi livello_esenzione_autonomi limite_lavoro_15000 limite_lavoro_55000 detr_pot_dipendenti_base detr_pot_pensionati_giovani_base detr_pot_pensionati_vecchi_base detr_pot_autonomi_base par_dipendenti_detr par_pensionati_giovani_detr par_pensionati_vecchi_detr par_sconiuge_common par_detrazione_coniuge primo_limite_sconiuge secondo_limite_sconiuge limite_detrazione_coniuge detr_pot_altri_familiari detr_pot_figli_piu3anni_meno3 detr_pot_figli_meno3anni_meno3 detr_pot_figli_piu3anni_piu3 detr_pot_figli_meno3anni_piu3 limite_detrazione_per_un_figlio Limite_aggiuntivo_per_ogni_figlio per_detraffitto_1 per_detraffitto_2 per_detraffitto_3 detr_affitto_lim_1 detr_affitto_lim_2 zult_detr_figli_1200 quota_detr_19 quota_detr_36
Value ... 3102.27553384 148278389499 0.0542098796457 0.0667510035909 0.252232648938 0.295597409241 0.367830058178 0.399801317488 0.418892569775 19331.3982784 33493.3977799 47655.3972815 60838.0004984 9236.05687098 8513.50182683 8513.50182683 5541.63412256 19331.3982784 47655.3972815 2329.63509031 2147.38311752 2147.38311752 1397.78105418 902.957897163 837.081948106 772.674479696 600.000000014 318.346225403 19331.3982784 39945.0047656 79999.9999996 932.567619156 1009.93916319 1009.9391632 1673.29277547 2336.64638773 80738.1664765 11327.8222698 999.999999993 212.980685519 1000.00000001 19331.3982784 33493.3977799 0.000000015 0.239206133914 0.409425755998
Agent-based Dynamic Optimization of Fiscal Systems 195 Table 11.2
Best fit individual after dynamic optimization. Raw genome values
Chromosome # 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
Value 0.99999999999 0.600348470392 0.99999999999 0.442615074752 0.264302258992 0.153772987531 0.305846521025 0.99999999999 0.99999999999 0.93084336116 0.99999999999 0.530577042326 0.866949481437 0.617979846053 0.00000000001 0.99999999999 0.99999999999 0.99999999999 0.214763329529 0.566391113489 0.00000000001 0.99999999999 0.21298068552 0.00000000001 0.00000000001 0.696030669569 0.523564389994 0.387596281031 0.389814906002 0.359821437261 0.165577659707 0.0839039093541 0.00000000001 0.00000000001 0.727778817001 0.99999999999
11.5 Appendix 11.5.1
Model and genetic algorithm parameters
As is so often the case, setting up a genetic algorithm for proper (let alone optimal) functioning is a matter of trial and error with the parameters
196
Matteo Morini and Simone Pellegrino
chosen. This case was no exception, and, as a reference, the following parameters are reported: Genome structure: 36 real numbers Population size: 200 to 500 individuals Number of generations: up to 1.000 Crossover rate: 0.80 Mutation rate: 0.025 Selection strategy: Standard Fitness-Proportionate Roulette Wheel Elitism: Not used A problem-specific parameter is listed next: Number of generations between reaction steps: 100 11.5.2
Optimal solutions, raw and decoded genomes
The names of the parameters are retained in the original language, Italian, since a translation would not be of much use to readers unfamiliar with the Italian national tax system and its specific terminology.
Notes 1. Only the pre- to post-tax income module has been employed in this exercise. 2. The sample is representative of the whole Italian PIT-paying population with a positive gross income, which amounts to approximately 41 million individuals. 3. The Reynolds–Smolensky index has a very small real-world variation range, its useful absolute values varying in the order of thousandths in practice: in Morini and Pellegrino (2014), the best value attained, 0.0580, and the actual empirical value in place, 0.0526, show a truly small-scale difference. 4. Let’s forget, for the moment, about the work of Robbins (1930). 5. Members of the same legal household may be theoretically identified and their reciprocal influence be taken into account; but no empirical data on family effects, to our knowledge, exist. 6. Some individuals, such as autonomous workers, can operate on a proportionally larger amount of their income; employees may or may not trim extra hours, according to contractual and employer conditions; individuals living on a retirement pension alone have zero range for adjustment. Here, the non-compliance option for tax evasion/avoidance is not considered at all, despite the fact of its existence. 7. Sensitive information on taxpayers is seldom made available, even with very strict non-disclosure agreements, for research purposes.
Agent-based Dynamic Optimization of Fiscal Systems
197
8. The number of “influential” neighbors considered is taken as five, following a completely ungrounded rule-of-thumb estimation of work “friends”. 9. This is also a schematic attempt at weighing heterogeneously characterized personal attitudes, which can range from very low reliability to a very persuasive reasoning. 10. Dependent and autonomous work are mutually incompatible, generally speaking, but a few specific situations, observable in the dataset, show that part-timers, for instance, can sometimes earn extra income from a parallel autonomous activity. 11. Computational time constraints, and the limited scope of this exercise do not suggest doing otherwise, although given long enough runs, even better solutions might be attainable.
References Aaberge, R. and Colombino, U. (2006). Designing Optimal Taxes with a Microeconometric Model of Household Labour Supply. In Discussion Papers No. 475, September 2006. Statistics Norway, Research Department. Ashenfelter, O. and Heckman, J. (1974). The Estimation of Income and Substitution Effects in a Model of Family Labor Supply. Econometrica: Journal of the Econometric Society, 42(1), pp. 73–85. Herrera, F., Lozano, M. and Verdegay, J. L. (1998). Tackling Real-coded Genetic Algorithms: Operators and Tools for Behavioural Analysis. Artificial Intelligence Review, 12(4), pp. 265–319. Holland, J. (1992). Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control and Artificial Intelligence. MIT Press, Cambridge, MA. Morini, M. and Pellegrino, S. (2014). Personal Income Tax Reforms: A Genetic Algorithm Approach. Working Papers 26, Department of Economics and Statistics, University of Torino. http://EconPapers.repec.org/ RePEc:tur:wpapnw:026. Pellegrino, S., Piacenza, M. and Turati, G. (2011). Developing a Static Microsimulation Model for the Analysis of Housing Taxation in Italy. International Journal of Micro Simulation, 4(2), pp. 73–85. Perone, C. S. (2009). Pyevolve: A Python Open-Source Framework for Genetic Algorithms. ACM SIGEVOlution, 4(1), pp. 12–20. Reynolds, M. and Smolensky, E. (1977). Post-fisc Distributions of Income in 1950, 1961, and 1970. Public Finance Review, 5(4), pp. 419–438. Robbins, L. (1930). On a Certain Ambiguity in the Conception of Stationary Equilibrium. The Economic Journal, 40, pp. 194–214. Van Der Walt, S., Colbert, S. C. and Varoquaux, G. (2011). The NumPy Array: A Structure for Efficient Numerical Computation. Computing in Science and Engineering, 13(2), pp. 22–30.
12
The Emergence of Cooperation Matteo Morini
12.1
Introduction
In this chapter, a classic Prisoner’s Dilemma model (first formalized in Tucker and Luce (1959)) is introduced – but with an additional, non-participation, option. A stochastic term perturbates the participating agents expected payoff: a cheating strategy, in the limit, is however dominated by a cooperative strategy, but during every round the advantage is only theoretical (the expected cooperating value exceeds defection), given by a probability distribution which favors cooperators. For a long time (i.e., since Darwin, 1859), the very existence of forms of cooperation in natural settings has been discussed, and the study of its emergence is currently part of mainstream evolutionary biology. The assumption of self-interest in economic sciences is apparently inconsistent with several phenomena routinely observed in human behavior. According to the hypothesis first drawn up by Beraldo and Sugden (2010), the driving force between the emergence of cooperative practices is evolution. Individuals learn advantageous mechanisms by a trialand-error process that favors the behaviors that grant a better payoff, through an exploratory phase which is forgiving of short-term errors but guarantees the best fit in order to thrive. Assuming anonymous interactions, a heterogeneous population and a selection strategy favoring individuals acquiring higher payoffs – perfectly reasonable assumptions – and the availability of the exit option, cooperation is shown to emerge and persist.
198
The Emergence of Cooperation
12.2
199
The model
In each game, individuals are paired randomly, and have to pick between the two standard Prisoner’s Dilemma options, either cooperating or defecting, plus non-participating. Every player must choose between the three options: Cooperation (C), Defection (D), or Non-participation (N). Their choice will result in a different outcome depending on the other player’s choice: Player A cooperates: (in each sublist, the results according to player B decisions are described) C. A cooperating partner results in a positive random payoff Xa, known in advance; the other player’s payoff, Xb, is unknown to player A. D. Defection by the other player gives a negative payoff −b (B earns a). N. If either player refrains from participating, the payoff is zero. Player A defects: C. Cheating on a cooperative partner gives player A a positive payoff a (B earns −b). D. Mutual defection results in both players receiving −c as their payoff. N. If either player refrains from participating, the payoff is zero. Player A does not participate: C. If either player refrains from participating, the payoff is zero. D. idem N. idem More concisely, the payoff matrix appears in Table 12.1. Table 12.1 Payoff matrix Player B
Player A
N C D
N
C
D
0, 0 0, 0 0, 0
0, 0 Xa, Xb a, −b
0, 0 −b, a −c, −c
200
Matteo Morini
Payoffs must satisfy the following conditions: Xmax > a > Xmin; b > a > c > 0, and, given the limited scope of this exercise, values are assigned the following fixed values: a = 3 b = 4 c = 2 The stochastic payoff granted to the players in case of mutual cooperation, X{a;b}, is the realization of a uniformly distributed random variable on the support [Xmin, Xmax], and there is an asymmetry of information in that the X value is known only to the player concerned. Exploring different dynamics, emerging from different values, is not relevant to the point at issue, and it has been already shown that, qualitatively, the results are not sensitive to the exact values, under the single and necessary condition that the inequality b > a > c > 0 holds. Accordingly, the values for the C − C (cooperation by each partner) type of play are drawn from a single, fixed range. The only extreme values taken into account are: Xmin = 0 and Xmax = 8 12.2.1
Individual heterogeneous behavior
Each participant in the game is initially endowed with a pair of individual characteristics, represented by the parameters β and π. In order to detail and give an intuitive understanding of the meaning of the behavioral characteristics introduced above, it is necessary to introduce the concept of X critical value. As mentioned earlier, each player’s expected payoff for a cooperative move, when matched by their counterpart, is stochastic, and determined in advance for each turn of the game, in the interval [Xmin, Xmax]. The value of β represents the value of X (the payoff) which, when an equal of greater determination occurs, leads the player to cooperate. A strategy is defined an equilibrium strategy whenever it constitutes the best reply to itself. Such assumptions are needed in order to provide the players with some rational consistency, and the extra condition that Xmin ≤ β ≤ Xmax is hence also imposed. The other individual parameter, π, serves a different purpose: should a C − C payoff determination below the critical value β occur, the agents individual tree enters a new bifurcation, the alternative offered being between defecting and giving up the play (for the single iteration in progress only).
The Emergence of Cooperation
201
At this point, π simply represents the individual probability that the player defects, the decision not to play at all occurring with probability (1 − π). 12.2.2
Natural selection
Simulated runs are subdivided in successive rounds, which, in turn, include a defined number of turns: each one of the 20,000 rounds consists of 100 turns, totaling 2,000,000 single matches played for each run. When all the turns in a single round have been played, and each player has earned their cumulated payoff, a selection mechanism akin to natural selection is put into place: the worse-off individuals are selected for replacement (more prosaically, they die). In order to keep a constant population, and to allow the better strategies to enter – and eventually invade – the game, missing individuals are replaced by new individuals.1 The new individuals are generated (are born) as almost-identical instances of the surviving players, with a fractional adjustment of their β and π parameters2 following a coin-toss process. With a necessarily tiny probability3 (in order to keep the population from collapsing into a state comprised of identical individuals, while maintaining a certain heterogeneity between individuals), new players receive the aforementioned parameters adjustment. Each parameter has a 0.5 (independently determined) probability of being trimmed, with a positive or negative sign equally likely. The selection mechanism is devised as follows: 10% of the worse-off individuals are replaced by an equivalent amount of individuals which are “mutated” copies of the best remainder, which are in turn selected by a roulette-wheel algorithm. The metaphorical roulette has a unique feature: each slot has a size which is proportional to each individual cumulated payoff. When it is spun, better-off individuals are more likely to be selected, as the wider slots are the more likely to be landed on by the ball. 12.2.3
Interaction
This exercise constitutes an attempt at replicating and extending Beraldo and Sugden’s work, with an additional feature made possible by modeling each player as an autonomous, adaptive and communicating agent. Intuitively, agents become embedded in a sort of social metaphorical space, where local interactions take place in form of exchange of information about each other’s attitudes.
202
Matteo Morini
Far from being a realistic or even sensible extension to the Prisoner’s Dilemma, the aim of this additional feature is to show how a dynamical system can respond drastically to minor adjustments; in this particular case, relaxing the absolute double-blind requirement in the participants attitudes, and replacing it with a certain malleability (a kind of friendliness) towards each other’s stances and statuses. The agents “accommodating” propensity is modeled in a very straightforward way: on each occasion during a play (that is to say, every time two individuals are picked and matched for a turn), individual parameters for each pair of players are averaged, with a positive probability ϕ. In layman’s terms, whenever a player with a strong inclination towards defection (high π) meets a “prefers not to play” agent (low π), their tendencies are averaged out; the meeting between a “picky” agent, with a very high β, and an relaxed one, results in both being more condescendent. Simulated experiments with several different affinity-seeking probabilities ϕ are carried out, and the results are described in the next section.
12.3
Experimenting with parameters
Mostly relevant to this exercise is observing the changes in dynamics while sweeping through parameter ϕ. A standard benchmark run without interaction between agents is, in turn, compared to simulations where ϕ is gradually assigned higher values: the frequency with which accommodating behaviors take place is increased, the resulting dynamics observed and a few comments are included for each alternative scenario. The baseline simulation, equivalent to a run where ϕ is equal to zero, is represented in Figures 12.1 and 12.2. The trajectory of β and π begins from a more or less random location (top left in the graph), since during the first round no selection has yet taken place, and the initial population is made by an individual with randomly chosen parameters. After an initial exploratory phase, the population average values start revolving around an equilibrium point, situated around (β, π) = (2.212, 0.997). A quick juxtaposition with the corresponding CDN frequencies graph makes for an easy interpretation of what is going on: as the critical value β decreases around a relatively low value (when compared to Xmax), and the likelihood for cooperation becomes sizeable, the non-playing strategy N almost disappears as π approaches value 1.
The Emergence of Cooperation
203
As soon as we introduce an almost irrelevant (ϕ = 0.001) probability for interactions to take place, we notice (Figures 12.3 and 12.4) an abrupt change in the system’s behavior: the β − π trajectory, although similar to the previous non-interaction simulation, becomes noisier, but a noticeable change appears in the CDN frequencies, which seem to undergo some sort of regime shift close to round 11,000, as soon as population diversity has been almost completely curbed by the “accommodating” effect. Several experiments have been run with different ϕ values: 0.01, 0.05, 0.10 are the main examples, but space constraints do not allow an in-depth description of each one. Suffice it to show the prime example of the case with ϕ = 0.50, where the sudden converging process does not allow for much exploration of the parameter space (see Figure 12.5): the β − π trajectory aims straight at the (1, 1) corner, non-participating behavior disappears, and a sustainable equilibrium between collaborators and defectors (66%/33%), Figure 12.6 emerges. 4
beta
3
2
1
0 0.0
0.2
0.4
0.6
0.8
pi Figure 12.1
Non-interacting agents scenario. Trajectory for β and π
1.0
1.0
% played
0.8
0.6
0.4
0.2
0.0 0
5,000
10,000 15,000 20,000 Round Figure 12.2 Non-interacting agents scenario. Per-round frequencies of C, D, N (top to bottom lines) 4
beta
3
2
1
0 0.0
0.2
0.4
0.6
0.8
1.0
pi Figure 12.3
Interacting agents scenario: ϕ = 0.001. Trajectory for β and π
1.0
% played
0.8
0.6
0.4
0.2
0.0 0
5,000
10,000 15,000 20,000 Round Figure 12.4 Interacting agents scenario: ϕ = 0.001. Per-round frequencies of C, D, N (top to bottom lines) 4
beta
3
2
1
0 0.0 Figure 12.5
0.2
0.4
0.6 0.8 pi Interacting agents scenario: ϕ = 0.5. Trajectory for β and π
1.0
206
Matteo Morini
1.0
% played
0.8
0.6
0.4
0.2
0.0 0
10,000 15,000 20,000 Round Figure 12.6 Interacting agents scenario: ϕ = 0.5. Per-round frequencies of C, D, N (top to bottom lines)
12.4 12.4.1
5,000
Appendix Decision tree
After two players have been matched to play a round, each of them needs to decide whether to cooperate (C), defect (D) or not to participate in the game (N). A (strictly personal) expected payoff X for a C − C play is randomly determined for each player; each player’s critical β parameter is then compared to X. Two options are available: ● ●
X ≥ β: The player plays C. X < β: The player enters the next bifurcation.
If the determination of X is not high enough in comparison with the player’s β, either D or N are played.
The Emergence of Cooperation ● ●
207
with probability π: The player plays D. with probability (1 − π): The player plays N.
Notes The author is greatly indebted to Sergio Beraldo and Robert Sugden for many of the ideas which inspired this chapter. 1. More accurately, an offspring of the best individuals with very similar characteristics enter the game. 2. Values are adjusted by a fixed amount, ±0.01. 3. The appropriate rate of new individuals incurring the adjustment has been determined to be 1%.
References Beraldo, S. and Sugden, R. (2010). The Emergence of Reciprocally Beneficial Cooperation. Working Paper 18, ICER. Darwin, C. (1859). On the Origin of the Species by Natural Selection. Murray, London. Tucker, A. W. and Luce, R. D. (1959). Contributions to the Theory of Games, vol. 4. Princeton University Press, Princeton, NJ.
Index AESOP, 37–8, 100 agent-based models causality, 4–5, 16 evolving, 19 flexibility, 3–5, 8, 13, 132, 149 interdisciplinarity, 7–8 learning in, 19–20, 22–3, 27–8 modularity, 7 scalability, 7 weaknesses, 17 agents heterogeneity, 6–7, 11–14, 20, 149–50, 164–5, 184, 201 interaction, 6–7, 12–16, 32, 37, 48, 57–67, 75, 88, 104–9, 119–20, 132–6, 149–51, 164–7, 175–82, 188, 198–203 avatar, 75, 100, 133
health, 74, 131–44, 169–70 heterogeneity, 6, 11, 20, 201 agent, 13–14, 149, 164–5
bottleneck, 85, 88, 94, 124 BPM, 74, 119 broadband development, 146–9, 152–60
NetLogo, 18–21, 31–4, 173 networks, 74 neural networks, 19, 21, 24–8
complexity, 8, 10, 11, 20, 75, 77, 119, 122–4 crisis, 147–9, 158–60 cybernetics, 11, 74 deductible, 134, 137, 139–43 employment, 148, 154–60, 166–9, 173–80, 187–8 ERP, 129 fitness, 19, 75, 96, 192 function, 187 Game Theory, 6, 13, 19 genetic algorithms, 19, 75, 95–6, 184, 187, 195 government spending, 161, 169–82
income, 134, 136–7, 139–42, 152–3, 167, 184–8 disposable, 187 tax, 185–7, 196 Information and Communication Technology, 113, 146–9 input-output, 149–52, 164–9 JAS, 18, 28, 31, 53, 138 Klio, 120 material model, 11, 75 More is different, 10
object-oriented programming, 13, 35, 41–2 optimization, 189, 191, 193 assumption, 14 dynamic, 184 model, 120, 129 organization, 75, 95 process, 129 system, 184 patient, 80, 132–9, 142 payments, 104–12 personal income tax, 184–6 physician, 133–7, 142 policymaker, 133 Prisoner’s Dilemma, 198–9, 202 production organization, 74 prune, 88, 91–2
209
210
Index
public policy coordination, 161–3, 169–82 evaluation, 146–7, 158–60 governance, 161–3, 169–82 Python, 18–19, 29, 31, 33, 35–9, 41–3, 54, 57, 59, 103–4, 186–7 realism, 4–9, 37, 106–14, 132, 137, 158–60 recipes, 74, 80 redistributive effect, 184–7 reinforcement learning, 19, 22–3, 30, 114 Reynolds-Smolensky Index, 186, 196 rural development, 147–9, 154–60 schedule, 41 school, 47–60 serious gaming, 14 simulation, 6, 13–19, 25, 32, 37–8, 42, 47, 57–9, 64, 72, 74–5, 85, 91–2, 96, 108–9, 111, 122–4, 132–3, 138–9, 144, 152, 154, 168, 175, 182, 202–3 agent-based, 11, 14, 31, 34–6, 40–1, 57, 75, 104, 122, 132, 144
environment, 32 healthcare system, 94 micro-, 138, 186 object-oriented, 138 social, 19–20 skill, 78, 119, 122–9 SLAPP, 31 SLAPP GitHub, 35 software, 6, 17, 32, 35, 57, 103, 119, 120, 130, 138, 144 spreadsheet, 38–9, 42, 44, 46, 62–3, 65 Swarm protocol, 32, 35–9, 47, 64, 91 tax optimization, 184, 189, 191–3 structure, 185, 192 system, 192, 196 Trichet, Jean-Claude, 14 UML, 108, 122 uncertainty, 5–6 what-if analysis, 8, 13, 16, 75–6, 146–52, 159–60, 182