Models and their discontents
And now for something completely different. This is the first installment in my theoretical writing proper and it starts at a very abstract level. As this stream of writing goes along it will become more concrete but it's important to establish it on firm theoretical grounds and that requires a journey into a very general, even philosophical place....
In order to analyse and understand any type of system, however it may be conceived, it is necessary to understand models, what they are; what you can do with them; and why they are so useful. This article briefly lays out the basic principles of system modelling in an abstract way. Although, an abstract discussion on models might seem like a strange place to start if you're interested in human society and politics, it is worthwhile because they are the foundation stone upon which all analysis is built. If you are unclear about the basics of modelling, you will be unclear about everything.
It is rare, in my experience, to see these principles put forward explicitly. Most people who work with consciously constructed models absorb these ideas through practice. It is common for people to greatly misunderstand these principles, with catastrophic consequences for their ability to analyse and understand everything.
Entities, labels and state
As a first step, let's imagine that there are some entities and these entities have some sort of state or other. It is common to refer to entities with state as variables, but as soon as you mention the word variable, many people assume that we are talking about something that can be represented by a particular number. I do not wish for people to make such an assumption, as I am talking about a more abstract concept here - so I shall say that we have a set of entities with state.
We give each of our entities a name. These names are arbitrary, mere conveniences so that we can talk about them more easily. In some domains people typically use single characters (x, y, etc) as names for their entities. In other domains, people use words from natural language (e.g. earth, john). In the first case, it is common for observers to assume that the entities are numbers. In the second case it is common to assume that the entities are real things. I wish to avoid both assumptions, as I am working on a very abstract level, so I shall merely refer to them as labels. The important thing is that these labels are arbitrary and are used merely to make it convenient to talk about the entities, they don't mean anything at all.
We can now say things like: imagine there was an entity called "Pog". So far so good and, hopefully, hard to misunderstand.
The next thing that we need to do is to define what we mean by the state of the entities. Here things get a little more complicated. By saying that entities have state, we imply that this may vary. So, our entity may have different states and still be the same entity. To nail this down a little bit further, we will say that there are a set of states that an entity can have while still being the same entity. We are not saying anything about the nature of these states - the set of states may be infinite. We are also not saying anything about the dimensionality of the set of states - we may wish to consider them as encompassing multiple dimensions, even infinite dimensions.
Now, we will need to come up with some way of representing the state of the entity - we could use numbers; we could use labels; we could use multiple dimensions that mix labels and numbers. In the general case it doesn't matter. These are merely ways of representing the different states that the entity can take on.
We can now say things like: imagine there was an entity called Pog, which could be in one of a number of states: "x, happy, 4, $ or French"
I mix together different types of symbols to represent the different states to illustrate the point that we can define the set of states and their labels in any way we like.
Change, state transitions and time
Thus far we have been dealing with a purely imaginary universe that has no correspondence to reality whatsoever. We now wish to introduce restrictions on the ways that states of an entity can change. To do this, we normally need to introduce some concept of time. This creates a connection between the imaginary world we are constructing and the reality of our universe. However, this connection is mostly illusory - in our imaginary world, time is really just an arbitrary dimension by which we impose restrictions on the state of our entities and how they transition from one state to another. We typically refer to it as time because time serves that purpose in our mental model of reality. It is quite possible to use a dimension that does not correspond conceptually to time, but for the sake of simplicity, we will assume that it does. Thus, we will assume that our imaginary world has a time dimension and this time dimension places restrictions on the states of entities and their transitions from one state to another. This time dimension may be a very abstract thing without any units. We could, for example, just say that it is a variable that advances one tick at a time: t, t+1, t+2, t+3...
We can use this dimension to place restrictions on the state of entities in ways such as the following:
- Our entity may be in single state at any given time t
- If our entity is in state French at any particular time, then its next state must be either $ or happy
- Our entity cannot be in state x without being in state happy immediately before.
- If there is an entity in our imaginary world with state 4 there must also be an entity with state French in that world
It should be noted that these are simply examples of restrictions that we impose using the time dimension. These constraints are all arbitrary - we can invent whatever constraints we want for the states of our imaginary entities. We could, for example, allow entities to have any number of simultaneous states and to transition from any given set of states to any other set of states.
Next, in addition to constraints on entity state transitions, we introduce some actual rules to define how the state of entities will change. So, for example, we may impose rules such as the following:
- If our entity is in state $ at time=t, it will be in state French at time=t+1
- If our entity is in state happy at some time, it will be in state x or state 4 at some time in the future
- If our entity is in state 4 it will be in a different state at some time in the future, but will never be in state French
Once again, I am using silly labels to refer to the state transition rules to emphasise their arbitrary, made-up nature. It is also important to emphasise that we do not have to be precise about these rules - they can be very vague in their details. We can say at some time in the future and we can under-specify the rules, so that we only insist upon an entity having one of a set of states, or not having some state. On the other hand, these rules have to be non-ambiguous in order for them to be rules as such - it has no meaning in our imaginary world to say that an entity will be in state sort of happy.
So, to recap, we have created an imaginary world and populated it with the following:
- A set of entities to which we assign labels
- A set of states which our entities can have, to which we also assign labels
- A set of constraints which govern the transitions that entities' states may take
- A set of rules which govern the transitions that entities' states must take
- Normally, we assume that there is a time dimension which we use to separate entity states from one another and to provide meaning to the concept of state changes.
That is it. There is nothing else. The above is a generalisation of all models that have ever existed or will ever exist. We can dress them up, add complex mathematical functions to define the transition rules and transition constraints. We can leave some of the elements out - we can have a model with no entities, or no transitions. We can introduce complex multi-dimensional states for our entities. We can formulate them in entirely different ways. We can do whatever we like with them, but in essence they can all be boiled down to the above.
Okay, there is something else. Normally, we want our imaginary worlds to be internally consistent. That is to say, that we do not want any of our rules and constraints to contradict one another. We want this to be the case, because if our imaginary world is internally consistent, then we can apply the standard rules of logic to it and we can reason about it and derive various things about the behaviour of our imaginary world. And the standard rules of logic encompass a vast arsenal of mathematical and algorithmic weapons which allow us to explore the nature of our imaginary world in minute detail.
The above 5 points can be considered to be the ground rules of an imaginary world that we have created. In mathematical lingo, they are known as axioms. The important thing to get about all of this is that all of this is entirely imaginary and thus cannot be wrong. If it is internally consistent, then we can apply logic to it and, as long as we apply the logic correctly, once again, we cannot be wrong. If it it is not internally consistent, we cannot apply logic to it, but we still cannot be wrong. Because this is an imaginary world, wrongness does not come into it, we can imagine whatever we want and we can apply logic to any given internally consistent imaginary world that we create without any risk of being wrong. We are operating in a world where we have decided exactly what things exist and what the rules are and, as long as we follow the standard rules of logic, it is guaranteed that we will never be wrong. This is one of the reasons why such imaginary worlds are such attractive things, they allow us to reason in such a way that all of our conclusions can be provably correct.
Mapping between reality and models
I emphasise this point so excessively because, in my experience, it is frequently misunderstood. The reason that it is so frequently misunderstood, as with most common misunderstandings, comes down to the imprecise semantics of words in natural language. When we speak of models, in any scientific sense, we are talking about imaginary worlds with arbitrarily defined rules. However, the models we work with are generally models of something that lives in the real world. It is very common for people to confuse the model itself with the assertion that it represents something or other in the real world. For a model to be interesting, it needs a mapping from the real world. Without a mapping from the real world, the model is just an arbitrary imaginary world, with arbitrary imaginary rules and most people aren't that interested in such worlds in themselves (although there are lots of examples of people who are - string theorists, scholars of Klingon, Middle Earth and Westeros, for example).
Distinguishing models and mappings is important because, while a model cannot be wrong, a mapping from the real world to a model cannot be correct. As soon as we leave the domain of imaginary worlds with their axioms and enter into the real universe, we leave the domain of provability, correctness and wrongness behind us. We enter a fuzzy world where the most we can hope for is better or more accurate or stronger evidence. It is in the mapping between model and reality that problems arise.
In order for a model to be a model of something in the real universe we need a mapping from reality to the model. Through this mapping, we assert that the entities in our model represent entities in reality and that their states represent states of the real world entites. We further assert that the rules of the model represent some aspect of the rules that govern the real world. For the model to be a useful model of something in the real world, the mappings between the real world and the entities in our model must be bi-directional. That is to say that we can take some aspects of reality and map them into entities in our model, then apply the rules of our model to the entities to see how the states of the entities change over time, then map the states of the entities back to the real world entities that they represent.
Theory = Model + Mapping
In such a way, a model plus a bi-directional mapping from reality is a theory. By putting forward a model with a mapping, we are implicitly asserting the following: this model represents reality to such an extent that, if we map from reality into our model, then apply the rules of our model to the entities, then map back from our model to reality, the states that the entities take on in the imaginary world of our model over time, will map to the states that the entities have taken on in the real world. Our model and mapping together are capable of predicting some aspect of reality.
In the next installment, I will move into a less abstract space and start to look at some concrete examples of models, different types of models and some actual mappings from the real world into the imaginary worlds described by the models.