Social Complexity Labs

Computational Social Science / Agent-based Simulations / Opinion Dynamics

Everything you need to know about social complexity

Welcome to his website that is all about the study and understanding of social complexity. In this website, we are collecting all the information you need to understand this field; a field which lays at the border between the social sciences, physics, and even videogames!

This website is for both people new to the field and for researchers working in the field. Just make sure to check the reading difficulty of different pages and posts:

  • These articles are for everyone
  • These require at least some experience
  • These are for experts and researchers

So feel free to navigate the website and posts to find the information you are looking for (or maybe for discovering new tools!)

Why are minorities segregated?

In this video, I try to explore this question with a variation of Schelling’s model of segregation. If you do not really know what I am talking about, fear not, as it is all explained in the video.

Top 3 reasons why agent-based models are the social science’s future

You do not need any expertise for reading this article

You may have heard of agent-based modelling. Maybe from someone really excited about them, telling you that they are the future of the social sciences.
But are they really so interesting and useful? Here we look at the three main reasons why this is actually the case.

Don’t like reading? Watch the video instead!

One problem with the Social Sciences

To see the additional value from agent-based modelling, let us first start with a problem; a problem in the social sciences.

Imagine a debate between two scientists. Since we feel very creative, let us call them Alice and Bob. Both think that people tend to become more similar when interacting. For example, if Mr. X likes cat and Miss. Y dislikes them, after discussing together, their opinions will move to the average one. Meaning that they would feel neutral towards cats.

Now, what really makes the difference between Alice and Bob is what they think that will happen with multiple people. Indeed, Alice thinks that this tendency of people to become more similar will generate separate groups of similar people. For example, all the people that like cats will become more and more similar between them. The same will happen for the people that dislike cats, but the two groups will never merge.

Bob instead supports the view that everyone will end up in the same group. Thus, in the end, everyone will fell neutral towards cats.

Now you may think you know who is right. You probably have a sound argument in support of one of the two. But then you notice that there are even more people. Some support Bob and some other Alice. And everyone looks really sure about her own argument. What is going on? Are these people just stupid?

Can agent-based models help?

Fortunately, Tyler (the agent-based modeller!) comes to help. To test this model, he sets up a simulation where people’s opinion is expressed as a single number (e.g. 0 = hates cats and 10 = loves cats). Then, he creates 100 agents, each one with an opinion chosen randomly (between 0 and 10). Then, every round, two people are selected for interacting. During their interaction, they just average their own opinion.

The result? Every time that Tyler repeats the simulation it ends with everyone moving to the neutral opinion.

Bob is really proud of his victory, but also Alice looks quite confident. Indeed, she says that for sure, people should become more similar, but only when it makes sense. For example, maybe a person mildly likes cats and another mildly dislikes them. Since their ideas are similar, it makes sense that they will influence each other. But if one loves cats and the other hates them, then there should be no influence.

Tyler repeats the simulation with the new conditions finding a surprise. Indeed sometimes the model supports Bob’s idea and some other times it supports Alice’s one.

Eventually we could keep going with this example. But we already have enough information for discussing our three points. We can already see why agent-based models are so important for the social sciences.

The invisible becomes visible

You may have noticed that Alice’s hypothesis appeared almost out of thin air. However, for Alice and most of the other people following her narrative, this may have been clear since the very beginning. How is that possible?

The problem with human’s speech is that everything depends on the context. Our brain is extremely good at this! Imagine we see a person with an extremely sad expression on her face. We can just ask “what happened?” without adding more context. But to be more explicit, we should have said something along the lines of “I see you are very sad. What caused this sadness of yours?”

Computers, instead, are extremely bad at understanding context. And this forces us to make every assumption explicit. Sometimes even revealing assumptions we did not know we had! For example, did you noticed that we were assuming the opinion to be a number? Nobody said this at the beginning!


What do you think about this claim: “dinosaurs were big.” Is that true or false?

Well, there were some very big dinosaurs (as Jurassic Park showed us!) but some of them were also quite small… So, what is the claim saying? All dinosaurs were big? Or maybe only some of them? Furthermore, what is “big”? Many dinosaurs were bigger of a human but way smaller than the Empire State Building.

All of this means that we cannot test (aka falsify) this claim; we cannot say if it true or false! And this was true also for the initial debate between Alice and Bob. However, thanks to agent-based models we can test the hypotheses and finally figure out what is the right claim.

Moving science to the next frontier

Another crucial point comes from the new possibilities for research. Indeed, during the discussion between Alice and Bob, we mostly focused on the final outcome. Now, instead, we see that we have a new series of parameters and questions.

Can we really represent opinion as a single number? Which rules should we use for making people more similar? The opinions should be averaged or should we use another formula?

All these questions may sound like we understand less than what we initially knew, but this is not true. In the beginning, we thought we knew. While new we start noticing that the problem is way more complex than what we initially thought.

This is great for science! Indeed, we need to know what is really simple, and what, instead, requires a lot more study. Without this, we would not have quantum mechanics!

Simulating society

Here is a fourth point for free: we could even simulate society! And to be honest, yes, at the current state of things, these models are still not that powerful. But it is possible that in some years we could reach a point in which we can really simulate an entire country.

Indeed, our history is full of policies which were designed for good but resulted in reaching the exact opposite effect. With agent-based modelling, we could simulate policies and identify the most effective ones. We could bring policymaking to a totally new level!


I just want to make clear one thing: this post is not saying anything along the lines of “the social sciences are bad, agent-based models are good.” Indeed, they are not even two separate fields! Agent-based models are tools for the social sciences. And since they are such a great tool they should get more and more popular among the social sciences.

What is Agent-Based Modeling?

You may have heard of Agent-Based models. Maybe also of Cellular automata and even AI. So, what are all these mysterious terms?

Don’t like reading? Watch the video instead!

The limits of mathematical modelling

When we speak about modelling we usually mean mathematical modelling. And this happens for a reason: mathematical modelling is extremely powerful and brought us to the current technological level.

But this technique has some limits; specifically, in the number of elements it can handle. Indeed, when modelling a system, we divide it into its fundamental (or atomic) components. Unfortunately, mathematical modelling tends to allow these components to be either 1, 2 or directly infinite.

The infinite approximation works almost perfectly in many cases. For example in physics, a gas usually is composed of thousands of billions of billions of particles. And notice here that repeating the word “billions” is not a mistake; in these cases, you really end up with billions of billions. This is not infinite; but definitely a good approximation.

The secret of birds’ flocking

Let us now try to think about a flock of birds For sure, we will not observe anything like that if we have only one or two birds. But what about infinite birds?

In that case, we will probably have something which looks like a continuum of birds. Something fascinating, for sure, but still not a flock.

The problem is that many social phenomena involve a number of entities which is fairly bigger than 2, but also way smaller than billions of billions. And in science, when we have a situation like that, we have to use our secret weapon: computer simulations.

This is the first fundamental concept:

Agent-based models are agent-based simulations

Or, to be more precise: agent-based (mathematical) models are mostly analyzed via simulations.

But what is an agent-based model?

Well, according to the definition, agent-based models are a specific type of models, which use agents… And an agent is an entity which has agency…
Looks like we are not explaining much? Fear not, because you probably already know what an agent is. You just did not know it was called this way.

Whenever you play a game you control some kind of character. And this character has some moves or actions that can be used. And when your character makes an action, it may trigger some other characters’ actions. Well, all of this is pretty much an agent-based model!

Indeed, agents just are some characters that can make some specific actions while following “the game” rules. Just “the game” is not designed for being fun and it is called “model” (even if some fields still refers to games, such as game theory).

These rules can range from extremely simple to extremely complex. And this brings us to our three main fields. Yes, because different fields are interested in different rules (mostly because they also want to study different things).

Cellular automata

In this case, the agents are so simple that are usually called cells. These cells are usually fixed on a grid and have two states: alive or dead. You can think of them as pixels on a screen that can be on or off.

The rules here are extremely simple too and are mostly based on the state of the surrounding cells. One rule may be if all your surrounding cells are on, then you should be turned off or if 3 neighbours are on, then also you should be turned on. Or other similar rules.

Sounds boring? Well, here is the twist: these “stupid” rules are enough to generate extremely complex behaviors. Indeed, you can even generate things like a gun which fires groups of active cells!

So, why are people studying cellular automata? Mostly to understand complexity. They want to understand when simple rules can generate interesting behaviour. Indeed, this may lead to some kind of mathematics of complexity!

Classic Agent-based modelling

However, some people do not want to wait to have a mathematics of complexity to be able to study our society. And that is why people started studying agent-based models.

In these models, the agents follow some rules which are fairly simple, but not as simple as cellular automata. For example, imagine a game where agents can either help each other or behave selfishly.

One agent, for example, may always help others. A second one may always behave selfishly. A third one may just copy the behaviour of other players. And so on…

Researchers then may study these simulations to see which agent will win again the other. Or they may want to observe if the interaction of these agents will generate something new, like a market!

These type of models are interesting for the following reasons:

  1. They help us understand which conditions can generate interesting phenomena
  2. We can directly link the rules to the outcome

Indeed, since these rules are fairly simple, we can also test their variations. And this is great for the scientific point of view as you can isolate the relationship between cause and effect.

Artificial Intelligence + agent-based modelling

Finally, you may want to spice things up. Indeed, in society people do not repeat the same actions over and over again but they can also learn. So, what happens if our agents can learn new things?

And just to be clear, here we are not speaking about things like an agent learns to walk. Indeed, to have social complexity we need interaction between agents. And this is how we can get results like agents learn to play hide and seek.

Indeed, in one result from the openai project, the agents become so good at the game, they even start using glitches to win!

What makes them special

In conclusion, you may prefer one of the three previous approaches, depending on what you like to study. Just remember that what makes everything special is the interaction. And what makes the system behave in new amazing ways is the number of agents. A number which is bigger than 2 but also way less than infinite.

Starting again

Just a quick communication: we are starting again!

As you may know, this project is currently brought to you by a single person (me, Dino). And in the last months, I was busy starting my fellowship (as well as gathering information for starting this project).

I think now I have collected enough experience to start this project again. So, in the next days expect new posts (and videos!)

An infographic to show exponential growth

As mentioned in another post, one of the main problems of the current pandemic is how to communicate the data. Especially, how to communicate them to the wide public.

Indeed, contagion follows an exponential growth, to which common people are not familiar at all. However, typical exponential measures as the growth rate, are meaningful only to people with a good scientific background. Because of that, we pushed to use the doubling time, which has the advantage of being a natural measurement of exponential behaviour and also be simple to understand.

To help the diffusion of this idea, we realized an infographic which stresses out the difference between linear and exponential increase.

Here is how the result looks like! Feel free to share it!

Making people understand COVID’s data

During these days of quarantine, a hard task is to keep people informed. The main problem comes with the nature of the data that are usually misleading. Indeed, while people can easily understand the concept of new cases or number of deceased, these values are not representative of the real growth. Indeed, the number of cases has a clear exponential growth.

A solution is using the growth rate, as many are doing now. Unfortunately, this is quite an abstract concept and most people do not have any idea of how big a rate of 30% actually is. And even if we say that this rate decreased by 80% they still have no clue how good this is.

We decided instead to use a more understandable measurement: the doubling time. That is the time needed for doubling the number of cases at that specific rate. We express it in days and months, so people can directly quantify the increase.

Furthermore, we are also working on making the graphs aesthetically pleasing. (All of this is part of our project on better scientific communication).

The results look like this:

Or like this:

If you like the idea feel free to re-use the images or apply the doubling to your graphs!

What is Social Complexity

Prior knowledge required for reading:

In this article you will learn:
1. What is a paradigm
2. What is social complexity and its 3 main features

Understanding paradigms

When studying groups of people, we can come up with different types of questions:

  • How can people reach a consensus?
  • Without a certain person, the group’s final decision would still be the same?
  • Who has more power?
  • What is the relationship between people and institutions?

This and many other similar questions are aimed at understanding how a group of people interact. Furthermore, this interaction can be represented in almost infinite ways.

E.g. you can classify interactions in two types: verbal and nonverbal. Or maybe, you may introduce seven type of personalities and their typical behaviors when they interact with each other.

When you choose one of these ways of representing reality, you are choosing a paradigm.

The Social Complexity approach

Social complexity is not a uniform paradigm. Instead, it is a collection of frameworks and models developed across different disciplines (from sociology to physics). However, there are some common characteristics between them.


while people live in a 3D space, social complexity is not much interested in the physical space, as much as the “social space.” Indeed, making friends, visiting websites, following a new YouTuber are all activities that can be better described in terms of links.

This is an excellent method as there are currently available extremely powerful tools for studying networks (e.g. methods to find the most influential node).

Adaptive behavior

When throwing a ball, we know that its behavior will be fairly simple. And even when it will hit an obstacle, we know that its motion will still obey the laws of mechanics.

Humans are way more complex than inert objects. Thus, they tend to adapt to new situations. And when they adapt to the new scenario, also other people may adapt too, and so on, in a possibly infinite cascade.

You can see this looking at the continuous evolution in the justice-crime fight. The justice system is constantly trying to introduce new laws and new methods for fighting crime. But as soon as a novelty is introduced, also the criminal world adapts to it, requiring new laws and more efficient methods.


The pattern created by birds is considered an emergent feature

Often people claim that complex systems “are not just the sum of their parts.” This is a fancy statement to say that complex systems show a weird phenomenon called “emergence.”

Emergence represents how something totally new object emerges from a multitude of individuals. For example, the state, the constitution, banks, and churches emerge from big groups of people living together. However, you can see that these people are not just living their own life (i.e. producing their food and nothing more). But they interact in “some specific way” that makes all these things become reality.

The concept of emergence is often explained in almost magical terms. You can find a clean explanation in this post.

Main frameworks

There are currently a huge number of models and frameworks in social complexity. Here you can find a list of some of the most widespread ones:

  • Computational Social Science
  • Game theory
  • Social spreading and social contagion
  • Opinion dynamics
  • Sociophysics
  • Sociocybernetics
  • Memetics

New pages added!

  • Added a new page with more detail about the website/project (page about)
  • Added (blank) page on
    • social complexity
    • complex systems
    • models

The page on Social Complexity should be published in the next 24h, together with a blog post on the topic.

What nobody told me about complex systems

Expertise required for reading:

What you’ll read:

  1. How complex systems are explained as they were wizardry
  2. What really means that “they are not the sum of their parts”
  3. A simple (and clear) explanation of the property of emergence

If you ever looked for information about complex systems, surely you came across someone claiming that complex systems “are not just the sum of their parts,” or that “you cannot understand a complex system just by studying its fundamental components.” This type of expression sounds really interesting and fascinating, and probably this is why it is so widely employed. Unfortunately, it also brings very little meaning to the poor listener which is usually left with a series of confusing images and empty explanations.

This type of communication is not something new. Indeed, it is typical of magic and poetry; where you want to communicate to the soul of a person, not to her mind. Unfortunately, this approach does not match well with science. In science, we want to be 100% clear about what we mean, and the listener should be able to understand it. Otherwise, science communication is just a low-quality version of Hollywood movies, where you can hear the scientist blabbing out of context that “is time to get rid of Fourier transform and start using applied quantum mechanics” (the Transformers movie appeared to produce strokes even in the strongest signal analyst).

Of course, I am aware that most people are not experts in complex systems. Meaning that we cannot just throw equations and graphs and expect everyone to understand. So, today we are not just going to see one of the most peculiar aspects of complex systems (aka emergence). Today we are also going to explain it in a way that is (hopefully) clear for everyone.

“The sum of its parts”

When I first heard the expression “the sum of its parts”, my mind was immediately brought to the concept of addition. I thought that, in some weird way, a complex system was something for which 2 + 2 does not equal 4. And some people actually use this concept for stressing the peculiarity of complex systems. But does this make any sense? Are we studying physical systems that violate standard arithmetic rules?

Now, if you know some math you are probably smiling, as you know that in mathematics 2 + 2 = 100 is perfectly fine (if the right term is using binary representation). Another classic example of these violations is clock-math. Indeed, in a clock 10 + 3 = 1, as if it is three hours after 10 it means that now it is 1 o’clock.

However, all of this feels more like a trick than a real explanation. Indeed, we are just changing representation (e.g. in binary 100 is just the symbol for 4 units of something; i.e. what normal people call “four”). This feels like declaring that you can eat a table, but just because you replaced the word “apple” with the word “table.”

So, all this mess with complex systems is just because someone is replacing the key concept with something else?
To answer as a popular meme of these days, I would say that the answer is yes, but also actually no.

The fireman’s secret

A good (and common!) example for understanding complex systems is the bucket brigade. Indeed, if you have 10 firemen with 10 buckets in front of a house on fire, you can just tell them to run back and forth to throw water at the house. However, a more efficient way is just to line them up in what in a human chain where each one passes the bucket to the next one.

Here I like to stress that the first task can be accomplished with any number of people (even just one), while the second option makes sense only if we have enough people to actually form the chain. Is this enough to explain the mystical power of complex systems? Yes, if we focus on the right thing.

What is “emergence”

People usually claim that the bucket brigade is an emergent feature of firemen which is “not contained in the single fireman.” From this, they also claim that studying a single fireman would be useless, as the single entity does not have the emergent property (and so you cannot study it).

However, when a person is passing the bucket to her neighbor is using her own arms and her own free will (if you suppose free will exists). Her skin is still the same, her eyes do not change color and her memories are still in her brain. So, what’s up with these complex systems? Why do we say that it does not make sense to study the single individual/component?

The trick is here: if you study a person in isolation, you can focus on her past, her face, her whatever… And maybe, if you study her well enough, you can come up with the idea that placing several of them one next to each other can create a bucket brigade. And this is the secret of complex systems: the link between them.

Let me stress it out better. When people are in isolation, they do not exhibit bucket-brigade-like behavior. This does not mean that they have to undergo some kind of mystical transformation. Or that when summed up together they produce some magical flow of chakra things. The problem is that in isolation you cannot observe their link. You cannot study how they interact, which is the key to some behaviors. Of course, you can use your imagination (and this has been done a lot in science!) but if you can directly see the weird way the components interact is so much easier.

For example, I am pretty sure nor even J.K. Rowling, just by looking at a bird will come up with a peculiar dynamics as bird flocking!

Is that… magic?

So, yes, someway we could say that a bucket-brigade is more than the sum of the single people. However, I prefer to avoid this kind of slogans which convey a lot of emotions (at least for the standard of an empty scientist as me) but very little meaning.

Instead, I would try to explain that some phenomena can be observed only by looking at the interaction of some components. So studying them only in isolation would most likely be a waste of time. I know that this does not sound super fancy and catchy, but unfortunately, this is just science.


Prior knowledge required for reading:

We live in a highly rationalized world, and this is at the core of the constantly increasing living standards. Still, people have huge problems in understanding what rationality is, why it is important and how to adhere to its standards. This results in irrational choices that severely impact both private life and the entire society (e.g. the anti-vaccine movement).

Rationality VS Emotions

Spock from Star Trek
Symbol of rationality without emotions

When I speak to people about rationality I often face answers like yes, rationality is great, but I don’t want to lose my humanity. And I actually agree that nobody should lose her identity, or soul, or whatever. Indeed, maybe rationality is not against emotions. Maybe rationality is what makes us humans.

Consider a sentence like I love this person, so I will marry her. It is perfectly rational, plus, it is also about emotions. Instead, it would become irrational when turned into I love this person, so I will beat her.

From this extremely short analysis, it appears that rationality is not an enemy of emotions and humanity, but maybe just something else. Indeed, rationality can take emotions as input and help us in making better decisions. Decisions that take into account how we feel now, how we felt before and how our actions will impact our lives and the ones of our beloved ones.

Rationality does not compete with emotions but helps us make better decisions based on them

To apply this analysis to vaccine hesitancy, it is a human-behavior to fear the vaccine’s side-effects. However, it fundamental to consider also what these side-effects actually are and their probability of happening. Furthermore, the lack of vaccination can have much more serious consequences with a way higher probability of happening. Thus, for someone that loves their children, it is perfectly rational to protect them via vaccination.

The rationality standards

The field of rationality is still growing, however, several standards have been developed up to now. Indeed, in general, it is possible to distinguish between strong arguments and weak ones. Furthermore, there is a rich literature on reasoning mistakes (known as fallacies).

Irrational behavior ignores thinking, while over rational ignores feelings

Thus, times are ready for people to study rationality, and to be able to apply this powerful tool to their lives. Unfortunately, the education system in most countries does little or nothing about that. Meaning, that even people with a high level of education, are often blind to the differences between a good and a bad argument.

The level of information on this topic is so low, that usually, people are not even aware that they lack knowledge. And when they evaluate some arguments they do it based on their gut’s feelings. Thus, in the public debate, high-quality arguments are evaluated exactly like the poor ones. Meaning that often the democratic choice is not based on the best choice, but only to the one that sounds best.

What can we do

People will not invest time and energy is something they do not even know that exists. Because of that, an important step consists of making people aware of rationality. They need to know about its standards and how they can strongly impact their lives.

Mark Zuckerberg, founder of Facebook

Also, the education system and the media need to become more invested in the topic. As we are looking for new ways to fight fake news, we should also look for new ways to fight fake rationality.

All of this is strongly related to social complexity research. Indeed, we live in a society and our choices influence other people; actually they influence also their choices. So, we need to study what makes people adhere to rational thinking and what, instead, make them move away from it.

If you are interested in any of this, consider checking my research section. Or, the social complexity lab, which is dedicated to spreading awareness of social complexity and rationality.

Page 1 of 2

Powered by WordPress & Theme by Anders Norén