The dark energy paradox leads to a new structure of spacetime.pptx
Sensor Organism project presentation
1. York Centre for Complex System Analysis
The Sensor Organism
Naums Mogers
Dr Martin A Trefzer
Dr Dimitris Lagos
2. York Centre for Complex System Analysis
2 of 26
I. Task
• Aims of the project
• Hardware
• Why Biology?
II. Solution
• Previous work
• Model
• Project outputs
III. Conclusions
• Model evaluation
• Model applications
• Further work
Presentation outline
4. York Centre for Complex System Analysis
4 of 26
• Create a bio-inspired model of a Wireless Sensor Network that can:
• Learn and recognize patterns in sensor readings
• Detect anomalies
• Optimize model to run on a constrained distributed embedded platform such as
Arduino Leonardo microcontrollers
• Produce a C++ codebase for the model
Aims of the project
5. York Centre for Complex System Analysis
5 of 26
• A set of Arduino Leonardo microcontrollers
• Clock speed: 16 MHz
• Dynamic memory: 2.5 KB
Hardware
6. York Centre for Complex System Analysis
6 of 26
Biological systems have many useful properties:
• Scalability
• Parallelizability
• Flexibility
• Self-organization
• Exhibits more complex behavior than that of any single agent
Why Biology?
8. York Centre for Complex System Analysis
8 of 26
Trefzer et al (2013), “On the Advantages of Variable Length GRNs for the Evolution of
Multicellular Developmental Systems” [1]
• Describes Cartesian Genetic Programming (CGP) as a way of encoding genetic data
in the form of directed graphs
Previous work
CGP mechanism of encoding variable length
genetic sequences [3]
9. York Centre for Complex System Analysis
9 of 26
Model
Organism
Organ
Cell
Genetics
An Artificial Developmental System based on Gene Regulatory Networks, that is
modelled on four levels:
10. York Centre for Complex System Analysis
10 of 26
Consists of multiple organs (Arduinos),
each belonging to one of two types:
• Cell colony
• Collects and preprocesses sensor
readings
• Learns patterns in sensor data
• Detects anomalies
• DNA server
• Stores genetic sequences, that
encode learned patterns
• Provides data to cell colonies on
request
• Accepts updated genes from the cell
colonies
Model
Organism
11. York Centre for Complex System Analysis
11 of 26
• Sensor drivers collect, preprocess and emit
sensor readings into the intercellular space.
The amount of signaling molecules per reading
depends on the complexity of the signal.
• Stem cells emerge when functional cell die.
During the differentiation stage they associate
with a sensor with the most complex signal and
transform into a functional cell.
• Functional cells train GRNs on sensor
readings. The most efficient cells get to
contribute their genes to the DNA server.
• DNA cache stores colony DNA.
Cell colony
Arduino (Cell colony)
Model
12. York Centre for Complex System Analysis
12 of 26
A cell transforms from stem to functional when it
recognizes a pattern and constructs the corresponding
GRN.
GRNs generation process includes stochastic
components so that each cell creates a candidate solution.
A functional cell contains two components:
• GRN takes sensor reading as input and produces
cell energy as output. Confident recognitions produce
more energy.
• Energy buffer stores cell energy. The energy dissipates
over time; without energy cell dies.
Model
Functional cell
Functional cell
13. York Centre for Complex System Analysis
13 of 26
GRN network consists of following
components:
• Genes take sensor readings as input;
they output the difference between
the expected and actual inputs.
• Gene outputs are channeled into the
energy-producing output node and
into the gates of the subsequent
genes.
• Gene gates filter inputs. Initially all
gates are open; later gates are
opened by preceding genes.
• Circular connections represent
periodic functions.
Model
Genetics: GRN
14. York Centre for Complex System Analysis
14 of 26
1. Input sensor reading 1.
Model
Genetics: GRN (worked example)
15. York Centre for Complex System Analysis
15 of 26
2. Produce energy and open subsequent
gene gates.
Model
Genetics: GRN (worked example)
16. York Centre for Complex System Analysis
16 of 26
1. Input sensor reading 2.
Model
Genetics: GRN (worked example)
17. York Centre for Complex System Analysis
17 of 26
2. Produce energy and open subsequent
gene gates.
Model
Genetics: GRN (worked example)
18. York Centre for Complex System Analysis
18 of 26
1. Input sensor reading 3.
Model
Genetics: GRN (worked example)
19. York Centre for Complex System Analysis
19 of 26
Patterns are encoded in two chromosomes using
Cartesian Genetic Programming similarly to [3].
• Chromosome 1 stores ordered genes
• (Bucket number, Next bucket occurrence, Next gene)
• Chromosome 2 stores a list of patterns
• (Sensor ID, First CH1 gene, Last CH1 gene,
Next sub-pattern, Next pattern)
Model
Genetics: DNA structure
20. York Centre for Complex System Analysis
20 of 26
• Formal UML definition of the
model: a collection of Activity
diagrams
• C++ OOP library implementing:
• ZigBee radio communication
• Several components of the model
(Organism, Intercellular_buffer,
Cell, DNA_Server)
Project outputs
21. York Centre for Complex System Analysis
21 of 26
• Formal UML definition of the
model: a collection of Activity
diagrams
• C++ OOP library implementing:
• ZigBee radio communication
• Several components of the model
(Organism, Intercellular_buffer,
Cell, DNA_Server)
Project outputs
23. York Centre for Complex System Analysis
23 of 26
Advantages
• Computationally lightweight – no complex mathematical operations
• Configurable – simple math allows to optimize model to different characteristics of
the problem domain
• Generic – little prior knowledge is required
Disadvantages
• Requires a lot of memory (for an embedded solution). Workarounds:
• Dedicate Arduinos to memory storage (DNA server)
• Switch from Arduino to Raspberry Pi (SDRAM = 256 MB+)
Model evaluation
24. York Centre for Complex System Analysis
24 of 26
Potentially applicable to any problem solvable by Wireless Sensor Networks
It is expected to be the most efficient solution in cases where input data change rate is
high and multiple patterns are present in the data
Examples:
• Machine health monitoring
• Terrain mapping
• Biometric observations
Model applications
25. York Centre for Complex System Analysis
25 of 26
• Prototype
1. C++ simulation
2. Hard testbed: actuators moving and rotating objects, sensors measuring speed,
orientation and vibration
• Concurrency
• Introduce safe memory management into the model
• Add threading to the C++ library
Further work
26. York Centre for Complex System Analysis
26 of 26
[1] M. A. Trefzer, T. Kuyucu, J. F. Miller, and A. M. Tyrrell, “On the advantages of variable
length GRNs for the evolution of multicellular developmental systems,” IEEE Trans. Evol.
Comput., vol. 17, no. 1, pp. 100–121, 2013.
Any questions?
References