Slides that describe a modelling framework to represent the process of making things. Presented at the Feb 2016 project meeting of the Digital DIY project..
1. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 1
A Model of Making
- A framework for representing, exploring and
integrating Digital DIY issues & processes
Bruce Edmonds
Centre for Policy Modelling
Manchester Metropolitan University
2. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 2
WP7 Strategy
Is in two parts:
1. Using Simulation Models (T7.1 MMU)
– Develop an framework to support model development
– Currently this is abstract but flexible
– We want your input/participation to develop these into
a series of models that address more specific issues
and (maybe) to more reflect particular case studies
– This process will inform a wider integration of ideas
2. Other Integration (T7.2 UoW; T7.3 Abacus;
T7.4 FKI). May be informed by results of T7.1 but
start in M18. Proposals as to how to do these will
be made/discussed at July 2016 meeting.
3. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 3
Purpose of this session, to…
1. tell you what we have been up to
2. explain and illustrate the modelling framework
we have produced and give you an idea as to
what it can do, its potential
3. give you a chance to ask questions about it
4. get critique/comments/suggestions about it
5. collect ideas as to which directions we will
develop models from this
6. form “user groups” of those interested in helping
advise/direct/critique/validate particular models
4. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 4
Motivation
Digital DIY involve complex phenomena, involving a
mix of many dimensions, including:
• micro-level and macro-level
• conditions and outcomes
• individual concerns and societal issues
• processes and structures
• things, their electronic representations and how
people think about both of these
• formal plans/designs/etc. and informal stories
• the built-in and the emergent
5. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 5
Modelling Goals
• To develop a modelling framework that will facilitate
the construction of simulations that capture Digital
DIY issues and scenarios
• To go to the nub – to explicitly represent the process
of making things, including sharing our
representations of those objects, teaching others how
to make them, trading them etc.
• Thus to produce integrated representations of our
many ideas within complex and dynamic simulations
to make analysis & reference more explicit
• To enable the exploration of a variety of “what if”
questions concerning making and sharing
6. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 6
The Technique: Agent-Based Modelling
Allows a more straightforward reality ↔ representation,
individual people are represented by individual agents
and individual objects by individual simulation objects.
• Heterogeneity is no problem, every object can have
different characteristics and every agent behave
differently (simulation anarchy rules )
• Consequences can emerge from the complicated
interactions of agents within the simulation, these
outcomes are not ‘built in’
• We can integrate and deal with the different
‘dimensions’ just listed within a single (but complex)
ABM, which can then be experimented upon,
displayed, inspected etc.
• Can range from quite abstract (as ATM) to more
specific to observed situations/data
7. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 7
The Simulation Platform/Code
Is mostly written in NetLogo, which is:
• freely available and usable
• relatively easy to understand and use
• is completely open source (in Java/Scala)
• there are now several active sites for sharing
models (e.g. modelling commons, OpenABM)
It uses some extensions to NetLogo which are also:
freely available, with open source code, written in
Java or Scala, open to code forks and feedback
Code and docs at: http://openabm.org/model/4871
8. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 8
The String MakerWorld
• Things in this model are strings, e.g. ‘ACC&BA’
• They are made form a finite number of ‘elements’ {A,
B, C…} and the two special symbols: {&, >}
• Only certain strings can be extracted from the
environment (randomly determined at the start). All
other strings have to be made from these.
• Only certain target strings can have inherent value
(randomly determined at the start). These can be
‘used’ to get that value
• Strings can be joined/split by hand at & but to get any
other kind of longer string you have to use a tool
(another string with “>” in it that can change strings)
9. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 9
Simple Example
Say an agent was in the following situation:
Available in environment: A; A>; AA; AB; B>; BA; BB;
A&A; A&B; AAA; AB>BA
Has use value to agent: AB; A&B; AAA; AAB; ABA; B&A;
BBA; BBB; A&AA
Possible sequences of actions by agent:
• Get A&B then immediately use it
• Get A and BA then join these to make A&BA
• Get A&B, split this into A and B, then join these to
make B&A and use this
• Get AB use tool AB>BA on it to make BA, use it
10. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 10
Motivation behind String MakerWorld
• Simplest world that allows the complexity of
making to be explicitly represented
• Working out how to make valuable strings is hard,
which gives value to good plans (and hence
motivation for trading/sharing plans)
• Control over which resources each agent has
access to can add heterogeneity in production
• Control over the target strings each agent can
directly use can add heterogeneity of need
• Heterogeneity of resources and needs gives
motivation for the trade/sharing of objects
11. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 11
The Model
• Agents are patches but can interact in any pattern
they choose/learn
• Things are explicitly tracked with their own properties
(which matter structurally)
Agents are
implemented
as patches
Object and its string
owned by an agent
Some objects are
complex, this one soft-
joined from smaller
parts
Some objects are simple, this
one composed of a single
“element”
This object is a tool, in
this case adding a soft
join into the string
(allowing it to be maybe
separated later)
The arrow indicates a
sale/transfer of an object
from one agent to another
12. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 12
Plans
• Plans (the sequence of actions needed to make
particular things) are separate from the things
• Agents sometimes do things experimentally (ATM
at random) to see what they can make
• Agents remember how they made things in terms
of plans – the actions necessary to get any
particular outcome
• Agents remember the better value plans and
preferentially execute those again
• These plans could be sent/shared/licensed
between agents
13. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 13
Some example plans learnt by an agent
value 3.25: realise [BAA split-right [B&BAA get]]
value 1.5: sell [B get] (patch 0 0)
value 1.25: realise [BAA split-right [B&BAA split-right
[B&B&BAA join [B split-left [B&BAA get]] [B&BAA get]]]]
value 1.25: sell [B split-left [B&BAA get]] (patch 2 0)
value -1: join-random
value -1.5: B split-left [B&BAA get]
value -2: get-random
• Note that alternative plans to make the same things
might be remembered, but with different costs
• Plans can be arbitrarily complex, thought each action
has a small cost associated with it, so more complex
plans will tend to have lower values (unless they
result in a more valuable result)
• Agents prefer to re-use plans with higher value
14. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 14
The (current) main simulation loop
Continually (each tick), agent:
Considers a number of plans (including the
default random ones) with a bias towards more
valuable ones:
Until one works:
Assess next plan to see if it would work
If so, do plan!
If new, compile and remember plan
If have too many plans in memory, maybe forget
one (with a bias towards the less valuable ones)
15. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 15
Number of realised items used for different
lengthed targets
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
1 101 201 301 401 501
Len=1
Len=2
Len=3
Len=4
Len-5
Len=6
Len=7
Len=8
Len=9
Lem=10
16. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 16
Average Wealth in Some Example Runs
17. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 17
Spread of Wealth for the same runs
18. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 18
Statistics concerning a single, example run
19. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 19
Things we might add into the model
The structure of the model has been designed to make
it easy to add a variety of
processes/innovations/affordances, for example:
1. The sharing or communicating of plans
2. Different strategies for deciding what to do
3. Introduction of ‘1D string printers’ that can make any
string (but only with certain elements)
4. The ‘instantiation’ of plans into manufacturing
facilities (with high capital costs but then low
production costs and high production levels)
5. Different kinds of market, for agents to sell to each
other
20. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 20
Issues we might explore…
…include:
• Changing the heterogeneity of needs, from
everybody has similar needs, to all different
• Explore the conditions under which more
centralised manufacturing or markets emerge
• Explore the impact of introducing new technology
(something equivalent to 3D printers)
• Looking at how the structure of communication
(for plans or selling/sharing items) effects things
• Maybe even wilder topics, e.g.
– what if all objects contain their own plans
– or come with tools to disassemble/reassemble/fix it
21. A Model of Making, Bruce Edmonds, Centre for Policy Modelling, DiDIY Meeting Thessalonika, Feb. 2016. slide 21
The End!
Bruce Edmonds: http://bruce.edmonds.name
Centre for Policy Modelling: http://cfpm.org
These slides available at:
http://slideshare.net/BruceEdmonds
The model code and its documentation freely available at:
http://openabm.org/model/4871