Complexity, in my point of view, is the key for disruptive evolutions in Data Science and Machine Learning. Approaches as the one from Edgar Morin allow us to see the world through a completely different point of view, analyzing and deconstructing commom sense, leading to a completely new epistemologic view of the world and problems.
Epistemology deals with fundamentals of truth, Socrates, Plato (the cave), Bachelard, Morin, Descartes and so on. An agent-based model is a model where agents are autonomous, interact with each other, iteract, follow rules for this interaction and usually we see an emergence of phenomena, many times completely disassociated from the initial condition. The system self organizes in what is called an open system, by Bertalanffy (1950). It depends upon internal changes in the system and also on environmental changes. As agents present a cognitive ability, the model associates concepts from Machine Learning with Artificial Intelligence.
Symbols are used to mimetize real situation and choices. It's a distributed Artificial Intelligence tool, as power in the network is decentralized and agents are autonomous. It's also a DES (discrete event simulation) because there are time steps for the modeling, and agents interact in each time step.
The K.I.S.S. approach is very popular since the 80s, meaning "Keep It Simple Stupid". This is the real meaning of agent-based modeling (ABM): solve complex problems (like human interaction) using simple rules. Alpha Go can be considered an ABM "on demand". Simple coordinate rules are developed and upon interaction with the other player, strategies emerge. It's the same principle.
ABM can be used in social networks to simulate interactions, social distance, level of satisfaction, spacial positioning and also to simulate forest fire, Conway Game of Life, traffic conditions, herd behavior, word-of-mouth advertising and other applications.
Agents are placed in a lattice and connections are made with adjacent cells or random cells using for instance, Markov Chains. Interactions may occur with friends, with people from previous relationships or randomly. As a discrete time event, each following row in the lattice is a different time step and cells assume different values according to the rule of interaction chosen.
In my doctorate thesis I developed and agent-based model using cellular automata, in order to simulate human interactions in aesthetic services. Data was collected through qualitative interviews and quantitative questionnaires with an interval of 4 months, two collections. In real world, I noticed, using statistics, that opinions regarding service quality evolved during these 4 months. In this period, clients and service providers interacted affecting quality perception.
This was the purpose of the agent-based model: starting from the first quantitative data collection, the model was developed in order to match data of the second quantitative survey. It was starting from the initial data and find an cellular automaton rule that could simulate interactions like in the real world. See the picture below:
To do that I had to find a cellular automaton rule in the search space of 10 to the power of 80 possibilities. I initially transformed data from the Likert scale (questionnaire) into a 5 state cellular automata, where each cell contained the value of the questionnaire. After that, the lattice was created with a row of individuals, each cell as an individual and they were sorted according to variance.
A random search of rules was conducted and the outcome of the model was compared to the second quantitative research in real world. After that, I did some statistical tests to check model validity. Years later, I developed a spatially defined social network, following the same principle.
The article of my thesis with details of the agent-based model can be found at Elsevier: http://www.sciencedirect.com/science/article/pii/S1571066109003740
And a more detailed article of the methodology used to generate data and the social experiment can be found here: https://www.linkedin.com/pulse/my-thesis-statistical-analysis-ruben...
In case you want to see social networks dynamics using Agent-Based Modeling check my post on contagion: https://www.linkedin.com/pulse/contagion-social-network-rubens-zimbres