Reviewed by
František Kalvas
University of West Bohemia, Department of Sociology
In this perspective, I found this 300 pages book a very good introduction to CSS, as it covers all relevant aspects that are fundamental to start a CSS research. It includes basic concepts, canonical definitions, quintessence of theories and a set of important readings. While this is very helpful for any beginner, it is worth noting that more experienced scholars might find food for thought in the section on the history of CSS and in other parts of the book, where recent developments in certain subfields of CSS are presented. In my view, the book could be used for teaching methodological aspects of modeling in the social sciences, as it presents the foundations of social complexity theory and so inspiring students on what to model and which measures look at with their models.
Hummon and Fararo (1995) suggested that any modern science X has three pillars: a theoretical X, an empirical X, and a computational X. The third component, computational X, is usually dedicated to data extraction/acquisition, data analysis, and simulation. Claudio Cioffi-Revilla understands CSS in this way. He defined CSS as “the interdisciplinary investigation of the social universe on many scales, ranging from individual actors to the largest groupings, through the medium of computation” (page 2; italics added by the reviewer). While sometimes CSS is perceived purely as computer simulations of social processes, this book has a larger perspective. Such a broad definition allowed Cioffi-Revilla to focus on all three main topics (data extraction/acquisition, data analysis and simulation) and so suggesting a general overview of social complexity.
In my view, the author was right in dedicating almost 100 pages to the theoretical X. Indeed, theoretical foundations are important to understand how to collect, analyse and simulate data on complex social systems. In addition, it is impossible to explain how to investigate a phenomenon of interest without describing it and to do this theories are needed.
I would also like to comment on how the book looked at problems of data analysis. No specific chapter is dedicated to data analysis. However, this problem is intensively covered as all substantive chapters introduced main research questions and explained specific data measures. Obviously, a more detailed understanding of data analysis would have brought the book a bit outside of its scope. Therefore, in my opinion, Cioffi-Revilla made again a good choice here in focusing on introductory work and conceptualization and explanation of measures to be empirically considered. Other contributions could focus on data analysis in more detail.
In Chapter 2, Cioffi-Revilla described the medium – the computer including programming languages, data structures, and algorithms. He stressed the importance of object-orientation features, dicussed differences between procedural and reflective programming and explained rules of good coding style. He also laid down the basics of unified modeling language (UML) (e.g., static class diagrams and dynamic sequence and state diagrams, attributes, and operations) and their importance for model tractability.
Chapters 3 and 4 looked at data acquisition. Chapter 3 presented computer content analysis and data mining. Firstly, it described Osgood's EPA-space of meaning (Evaluation, Potency, and Activity). Secondly, it explained principles and work-flow of data mining. The author suggested that data mining has a negative connotation in social science, but this is not the case of CSS. Explaining data mining meant looking beyond a simple analysis of textual data and the author generalized this idea to other data types when introducing other types of analyses (e.g. spatial, network, sequence, intensity, anomaly detection, and sonification analysis). Chapter 4 dealt with social networks (SN), so extending the outlook beyond data acquisition. This chapter proposed a definition of SN and illustrated several typologies, e.g., SN, levels of SN analysis (SNA), measures for SNA and basic SN topologies. It also introduced certain widely used software packages and some important SNA applications, e.g., cognition and belief systems, decision-making models, organization models, supply chains, small-world structure, and international relations.
Then, from chapters 5 to7, Cioffi-Revilla presented the foundations of social complexity (SC) theory. Firstly, he reconstructed the history of SC's evolution, identified certain features of SC (e.g., bounded rationality, emergence and modularity) and illustrated important qualitative and quantitative indicators of SC (e.g., clustering coefficients, Shannon's entropy, Peregrine-Ember-Ember scale of SC, HDI etc.). Secondly, he presented the structural and distributional laws of SC (e.g., rank-size, absolute frequency, PDF, and CCDF models), their empirical analysis and general implications. Thirdly, after introducing math useful to deal with SC, he summarised important theories: the emergence of chiefdoms and states, collective action, adaptation via artifacts and canonical theory of SC.
Finally, from chapters 8 to 10, he examined social simulation. Firstly, he justified the purposes of simulation, introduced the terminology and described six modeling work-steps that can accompany scholars from the formulation of the research questions to research design, model implementation, verification and validation up to model analysis. Then, he described two types of variable-oriented models (i.e., system dynamics and queueing) and two types of object-oriented models (e.g., cellular automata and agent-based models). Finally, he applied his six work-steps to all the models introduced and explained these applications in due detail.
To conclude, I believe Claudio-Cioffi’s book is a must read for any beginner of CSS. While there are other books, e.g., Mitchell (2009) and Christie et al. (2011), which introduced the reader to modeling and simulation approaches, Claudio-Cioffi targeted his book to a social science readership more explicitly. It is a great synthesis of the main achievements in this field that could be fruitfully adopted by anyone teaching CSS as an introductory guide.
HUMMON, N.P. and Fararo, T.J. (1995). The Emergence of Computational Sociology. Journal of Mathematical Sociology 20(2–3), 79–87.
MITCHELL, M. (2009). Complexity. A Guided Tour. Oxford University Press, Oxford.