SlideShare a Scribd company logo
1 of 41
Download to read offline
SEPRO
System for modeling and simulation
of qualitative network dynamics
Stefan Urbanek – stefan.urbanek@gmail.com – @Stiivi Jan 2018
INSPIRATION
▪︎ Biochemistry – receptors
OBJECTIVES
▪︎ Test alternative approach for simulation of network problems
▪︎ Examine possibility of purely qualitative approach
▪︎ Find primitives of non-conventional computation of network
problem solving
▪︎ Develop a simulator prototype and set of models that demonstrate
the system
SYSTEM DESIGN PRINCIPLES
▪︎ Completeness and clarity of model description
▪︎ Minimal set of assumptions
▪︎ No explicit control flow
▪︎ Iterative simulation and parallel in nature
THE MODEL
Basic Concepts
Model
observation initial structure
concepts
(symbol semantics)
actuators
graph
probes
metadata
MODEL
▪︎ Simulated universe is a directed graph of objects
▪︎ Objects have only qualitative properties
▪︎ State transition is triggered either by existing state or potential
interaction of two objects
▪︎ State changes can happen only locally* to the transitioning or
interacting objects
* graph distance of 1; see “Local Context” later
OBJECT
slot
s3
s2
s1
t3
t1
t2
t4
tags
Indivisible entity representing an instance of
relevant concept within simulated universe.
TAG
t3
t1
t2
t4
tags
Qualitative property of an object.
State of an object is denoted by a set of tags.
SLOT
slot
s3
s2
s1
Slots are properties of an objects that reference other objects.
Slots represent a directed labelled edge of the object graph.
NETWORK STRUCTURES
chain
triplet
tree
cycle
STRUCT
slot west
slot south
target
west
south
Examples
MODEL DYNAMICS
object state changes and graph modification
CONCEPTS
▪︎ Actuator – atomic description of state change
▪︎ Selector – match pattern for objects subject to transition
▪︎ Transition/Modifier – description of state change
affects either object’s state or local* relationships
* graph distance of 1; see “Local Context” later
“LOCAL” CONTEXT
p
selected a
c
b
indirect a
indirect b
out of sight
out of sight
out of sight
q
r
Design limitation (intentional):
Object state and graph transitions can happen only within distance of 1 from the selected object.
ACTUATORS
selector
this
WHERE DO modifiers control
selector modifiersselector
this other
controlWHERE ON DO
unary
binary
transition of object’s state and local* relationships based on previous object’s state
transition of state of either of two objects based on states of objects in a tuple
from a cartesian product of specific objects
SELECTOR
evaluated
t1
t2
t1
t2
may be selected
tested
dereferenced
slot
WHERE IN …
evaluated
may be selected
t1
t2
tested
…
evaluated
WHERE …
SET tags
UNSET tags
BOUND slots
UNBOUND slots
direct indirect – distance 1
SELECTOR TESTS
▪︎ SET: all of selector tags are associated with an object
true if selector’s tags ⊂ object’s tags
▪︎ UNSET: none of selector tags are associated with an object
true if object’s tags ∩ selector’s tags = ∅
▪︎ BOUND: graph contains an edge from selector’s slots
▪︎ UNBOUND: graph does not contain an edge from selector’s slots
MODIFIERS
State and structure mutation
STATE MODIFIER
▪︎ SET tags: associate set of tag symbols with an object
result = object tags ∪ modifier tags
▪︎ UNSET tags: disassociate set of tag symbols with an object
result = object tags - modifier tags
GRAPH EDGE MODIFIERS
▪︎ BIND slot reference → target
create an edge in the graph
▪︎ UNBIND slot reference
remove an edge in the graph
UNARY BINDING MODIFIER
unbind
direct subject
u IN t
s
s
t
t
s
s
t
t
s
t
u
s
u IN ts
t
u
s -> THIS
s -> t
s -> t.u
THISthis this
this this
this
t
this
t
u
u
t t
s -> NONE
self-bind
clone
pull
t
unbind
indirect subject
s
u
t
u
this.t
s
s.u -> THIS
s.u -> t
this this.s
s
uthis s
this
this.s
t
u
this.t
s
this
s
back-self
connect
BINARY BINDING MODIFIER
direct subject
sshand handother otherjoin other IN LEFT s -> OTHER
IN RIGHT s -> OTHER
Intentionally unavailable state transitions of binary modifiers by design:
unbind – combination of binary state change and unary modifier
indirect – combination of binary direct subject, state change and unary modifier
OF MODIFIERS
▪︎ Proposed modifiers are assumed to be sufficient to achieve any
potential graph configuration.
▪︎ All state changes beyond distance of 1 from the selected object
must be composed of multiple transitions that propagate through
the network.
▪︎ Susceptibility to being affected by other actuators along the way is
intended design feature.
ACTUATORS – PRINCIPLES
▪︎ Order of applying actuators is not predetermined
▪︎ Order of actuators being applied might affect some simulations
CONTROL SIGNALLING
▪︎ NOTIFY: signal (symbols) to the simulator without interruption
Use case: monitor reached goals; trigger/start/stop measurement; visualize a state of interest
▪︎ TRAP: signal (symbols) and interrupt the simulator (resumable)
Use case: goal reached and user interaction is expected; a product has been created
▪︎ HALT: signal to the simulator and interrupt (non-resumable)
Use case: invalid state has been reached, resuming the simulation might yield non-sensical results
MODIFIERS SUMMARY
BIND slot → NONE
BIND slot → OTHER
BIND slot → OTHER.target_slot
BIND indirect.slot → NONE
BIND indirect.slot → OTHER
BIND indirect.slot → OTHER.target_slot
BIND slot → NONE
BIND slot → SELF
BIND slot → target_slot
BIND slot → t.w
BIND indirect.slot → NONE
BIND indirect.slot → SELF
BIND indirect.slot → target_stlot
BIND indirect.s → t.w
binary
unary
EXAMPLE: “LINKER”
Model example in Sepro 2014-16 prototype
Objective:
Build a chain of elements.
Components:
- links to be chained
- object binding two links together
Catch:
Introduce fake link component and observe what happens.
OBJECTS
linker
left right
link
next
CONCEPT linker
TAG ready
SLOT left, right
CONCEPT link
TAG free
SLOT next
CONCEPT fault
# We pretend to be a link, but there is no 'next' slot
TAG link, free
Sepro 2016
ACTUATORS
WHERE linker AND NOT BOUND left ON link, free DO
BIND left TO other
IN other UNSET free
SET one
WHERE one ON link AND free DO
BIND right TO other
IN other UNSET free
UNSET one
SET two
Reminder: although this model works as it is, we don’t know how it will behave when composed with other actuators.
WHERE two DO
IN this.left BIND next TO this.right
UNSET two
SET advance
WHERE advance DO
BIND left TO this.right
UNSET advance
SET cleanup
WHERE cleanup DO
UNBIND right
UNSET cleanup
SET one
Sepro 2016
WORLD
WORLD main
OBJECT fault
OBJECT link * 35
OBJECT linker * 3
Sepro 2016
RESULT1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
REJECTED IDEAS
COUNTERS
slot
s3
s2
s1
t3
t1
t2
t4
c1
c2
c3
counters
tags t1 t3t2
…
c1 c2
Tags:
Counters:
Slots: s1 s2 s3
c3
↓ ↓ ↓
qualitative
quantitative
relational
REJECTED
Quantitative properties
ROOT OBJECT
▪︎ Single object referred to as ROOT from anywhere in the simulation.
▪︎ Can be tested for and can be acted upon.
▪︎ Rejected due to potential abuse for globally accessible state which
would defeat the whole purpose of the system to be based on local
interactions.
REJECTED
SEPRO 2018
SEPRO 2018 GOALS
▪︎ Simplified and formalized selectors and modifiers
▪︎ Removed redundancy – focus on primitives
▪︎ Prototype/referential implementation
Unary Actuator
Binary Actuator
Selector
Structure
Relationship
[Symbol:Prototype]prototypes
relationships
Prototype
{Symbol}tags
Relationship
Symbol
Symbol
Symbol
to
slot
from
Unary Actuator
Control
[Subject Mode: Unary Transition]
Selector
control
selector
transitions
Control
Bool
{Symbol}
{Symbol}
halts
traps
notifications
Selector ∑
Selector Patternmatch
all
match
Unary Target ∑
Slot
subject
indirect
in subject
unbind
slot
Slotin Slotslot
Unary Transition
[Symbol:Unary Target]
Symbol Mask
bindings
tags
Constraint: if Effective Slot is indirect, target
mode must not be indirect.
Binary Transition
[Symbol:Binary Target]
Symbol Mask
bindings
tags
Binary Actuator
Control
[Subject Mode: Binary Transition]
[Subject Mode: Binary Transition]
Selector
Selector
control
right transitions
left transitions
left selector
right selector Binary Target ∑
Slot
other
in other
unbind
slot
Model
[Symbol:Binary Actuator]
[Symbol:SymbolType]
[Symbol:Unary Actuator]
[Symbol:Structure]
binary actuators
symbols
unary actuators
structures
Presence ∑
present
absent
s → none
s → self
s → t
s → t.w
i.s → none
i.s → self
i.s → t
i.s → t.w
s → none
s → other
s → other.t
i.s → none
i.s → other
i.s → other.t
Structure
{Type}
[Type:Type]
[Type]
Type?
Type
set
dictionary
array
optional
base
Sum Type ∑
case 2
case 1
Symbol Type ∑
slot
tag
label
Legend
Sepro-18 Entities
Selector Pattern
Symbol Mask
Symbol Mask
slots
tags
Symbol Mask
[Symbol:Presence]mask
Subject Mode ∑
Slotindirect
direct
slot
left right
controlWHERE ON IN LEFT IN RIGHT
left target right target
transitions transitionsselector selector
this
WHERE IN THIS controlselector transition
this target
FUTURE
▪︎ Model composition
Merging actuators and concepts from multiple models together into one.
▪︎ Constraints
Spatial or other constraints for selectors, for example grids.
▪︎ Symbol abstraction/inheritance
Classification of symbols (primarily for tags) into hierarchies. Example: test for liquid would
match water if such hierarchical association exists.
“SCI-FI”
▪︎ establish equivalence of Sepro primitives (virtual) and physical
systems

More Related Content

Similar to Sepro - introduction

Imitation Learning and Direct Perception for Autonomous Driving
Imitation Learning and Direct Perception for Autonomous DrivingImitation Learning and Direct Perception for Autonomous Driving
Imitation Learning and Direct Perception for Autonomous DrivingRocky Liang
 
Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Taking your machine learning workflow to the next level using Scikit-Learn Pi...Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Taking your machine learning workflow to the next level using Scikit-Learn Pi...Philip Goddard
 
Angular 2 KTS
Angular 2 KTSAngular 2 KTS
Angular 2 KTSJohn Vall
 
Ooad( class diagram)
Ooad( class diagram)Ooad( class diagram)
Ooad( class diagram)RimshaLiaqat5
 
Validating big data jobs - Spark AI Summit EU
Validating big data jobs  - Spark AI Summit EUValidating big data jobs  - Spark AI Summit EU
Validating big data jobs - Spark AI Summit EUHolden Karau
 
Best Practices for Shader Graph
Best Practices for Shader GraphBest Practices for Shader Graph
Best Practices for Shader GraphUnity Technologies
 
2019 2 testing and verification of vlsi design_verification
2019 2 testing and verification of vlsi design_verification2019 2 testing and verification of vlsi design_verification
2019 2 testing and verification of vlsi design_verificationUsha Mehta
 
Graphs for AI & ML, Jim Webber, Neo4j
Graphs for AI & ML, Jim Webber, Neo4jGraphs for AI & ML, Jim Webber, Neo4j
Graphs for AI & ML, Jim Webber, Neo4jNeo4j
 
Rete network slicing for Model Queries
Rete network slicing for Model QueriesRete network slicing for Model Queries
Rete network slicing for Model QueriesZoltán Ujhelyi
 
D1 from interfaces to solid
D1 from interfaces to solidD1 from interfaces to solid
D1 from interfaces to solidArnaud Bouchez
 
Advanced debugging
Advanced debuggingAdvanced debugging
Advanced debuggingAli Akhtar
 
Chapter02 graphics-programming
Chapter02 graphics-programmingChapter02 graphics-programming
Chapter02 graphics-programmingMohammed Romi
 

Similar to Sepro - introduction (20)

Imitation Learning and Direct Perception for Autonomous Driving
Imitation Learning and Direct Perception for Autonomous DrivingImitation Learning and Direct Perception for Autonomous Driving
Imitation Learning and Direct Perception for Autonomous Driving
 
AngularJS Workshop
AngularJS WorkshopAngularJS Workshop
AngularJS Workshop
 
Lec11
Lec11Lec11
Lec11
 
Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Taking your machine learning workflow to the next level using Scikit-Learn Pi...Taking your machine learning workflow to the next level using Scikit-Learn Pi...
Taking your machine learning workflow to the next level using Scikit-Learn Pi...
 
Angular 2 KTS
Angular 2 KTSAngular 2 KTS
Angular 2 KTS
 
Ooad( class diagram)
Ooad( class diagram)Ooad( class diagram)
Ooad( class diagram)
 
Validating big data jobs - Spark AI Summit EU
Validating big data jobs  - Spark AI Summit EUValidating big data jobs  - Spark AI Summit EU
Validating big data jobs - Spark AI Summit EU
 
Best Practices for Shader Graph
Best Practices for Shader GraphBest Practices for Shader Graph
Best Practices for Shader Graph
 
Backbone.js
Backbone.jsBackbone.js
Backbone.js
 
2019 2 testing and verification of vlsi design_verification
2019 2 testing and verification of vlsi design_verification2019 2 testing and verification of vlsi design_verification
2019 2 testing and verification of vlsi design_verification
 
Graphs for AI & ML, Jim Webber, Neo4j
Graphs for AI & ML, Jim Webber, Neo4jGraphs for AI & ML, Jim Webber, Neo4j
Graphs for AI & ML, Jim Webber, Neo4j
 
Matrix Factorization
Matrix FactorizationMatrix Factorization
Matrix Factorization
 
Rete network slicing for Model Queries
Rete network slicing for Model QueriesRete network slicing for Model Queries
Rete network slicing for Model Queries
 
Frontend training
Frontend trainingFrontend training
Frontend training
 
D1 from interfaces to solid
D1 from interfaces to solidD1 from interfaces to solid
D1 from interfaces to solid
 
C3 w5
C3 w5C3 w5
C3 w5
 
Advanced debugging
Advanced debuggingAdvanced debugging
Advanced debugging
 
Chapter02 graphics-programming
Chapter02 graphics-programmingChapter02 graphics-programming
Chapter02 graphics-programming
 
SOLID principles
SOLID principlesSOLID principles
SOLID principles
 
Rseminarp
RseminarpRseminarp
Rseminarp
 

More from Stefan Urbanek

Forces and Threats in a Data Warehouse (and why metadata and architecture is ...
Forces and Threats in a Data Warehouse (and why metadata and architecture is ...Forces and Threats in a Data Warehouse (and why metadata and architecture is ...
Forces and Threats in a Data Warehouse (and why metadata and architecture is ...Stefan Urbanek
 
New york data brewery meetup #1 – introduction
New york data brewery meetup #1 – introductionNew york data brewery meetup #1 – introduction
New york data brewery meetup #1 – introductionStefan Urbanek
 
Cubes – pluggable model explained
Cubes – pluggable model explainedCubes – pluggable model explained
Cubes – pluggable model explainedStefan Urbanek
 
Cubes – ways of deployment
Cubes – ways of deploymentCubes – ways of deployment
Cubes – ways of deploymentStefan Urbanek
 
Knowledge Management Lecture 4: Models
Knowledge Management Lecture 4: ModelsKnowledge Management Lecture 4: Models
Knowledge Management Lecture 4: ModelsStefan Urbanek
 
Dallas Data Brewery Meetup #2: Data Quality Perception
Dallas Data Brewery Meetup #2: Data Quality PerceptionDallas Data Brewery Meetup #2: Data Quality Perception
Dallas Data Brewery Meetup #2: Data Quality PerceptionStefan Urbanek
 
Dallas Data Brewery - introduction
Dallas Data Brewery - introductionDallas Data Brewery - introduction
Dallas Data Brewery - introductionStefan Urbanek
 
Bubbles – Virtual Data Objects
Bubbles – Virtual Data ObjectsBubbles – Virtual Data Objects
Bubbles – Virtual Data ObjectsStefan Urbanek
 
Python business intelligence (PyData 2012 talk)
Python business intelligence (PyData 2012 talk)Python business intelligence (PyData 2012 talk)
Python business intelligence (PyData 2012 talk)Stefan Urbanek
 
Cubes - Lightweight Python OLAP (EuroPython 2012 talk)
Cubes - Lightweight Python OLAP (EuroPython 2012 talk)Cubes - Lightweight Python OLAP (EuroPython 2012 talk)
Cubes - Lightweight Python OLAP (EuroPython 2012 talk)Stefan Urbanek
 
Knowledge Management Lecture 3: Cycle
Knowledge Management Lecture 3: CycleKnowledge Management Lecture 3: Cycle
Knowledge Management Lecture 3: CycleStefan Urbanek
 
Knowledge Management Lecture 2: Individuals, communities and organizations
Knowledge Management Lecture 2: Individuals, communities and organizationsKnowledge Management Lecture 2: Individuals, communities and organizations
Knowledge Management Lecture 2: Individuals, communities and organizationsStefan Urbanek
 
Knowledge Management Lecture 1: definition, history and presence
Knowledge Management Lecture 1: definition, history and presenceKnowledge Management Lecture 1: definition, history and presence
Knowledge Management Lecture 1: definition, history and presenceStefan Urbanek
 
Open spending as-is 2011-06
Open spending   as-is 2011-06Open spending   as-is 2011-06
Open spending as-is 2011-06Stefan Urbanek
 
Cubes - Lightweight OLAP Framework
Cubes - Lightweight OLAP FrameworkCubes - Lightweight OLAP Framework
Cubes - Lightweight OLAP FrameworkStefan Urbanek
 
Open Data Decentralisation
Open Data DecentralisationOpen Data Decentralisation
Open Data DecentralisationStefan Urbanek
 
Data Cleansing introduction (for BigClean Prague 2011)
Data Cleansing introduction (for BigClean Prague 2011)Data Cleansing introduction (for BigClean Prague 2011)
Data Cleansing introduction (for BigClean Prague 2011)Stefan Urbanek
 
Knowledge Management Introduction
Knowledge Management IntroductionKnowledge Management Introduction
Knowledge Management IntroductionStefan Urbanek
 

More from Stefan Urbanek (20)

StepTalk Introduction
StepTalk IntroductionStepTalk Introduction
StepTalk Introduction
 
Forces and Threats in a Data Warehouse (and why metadata and architecture is ...
Forces and Threats in a Data Warehouse (and why metadata and architecture is ...Forces and Threats in a Data Warehouse (and why metadata and architecture is ...
Forces and Threats in a Data Warehouse (and why metadata and architecture is ...
 
New york data brewery meetup #1 – introduction
New york data brewery meetup #1 – introductionNew york data brewery meetup #1 – introduction
New york data brewery meetup #1 – introduction
 
Cubes 1.0 Overview
Cubes 1.0 OverviewCubes 1.0 Overview
Cubes 1.0 Overview
 
Cubes – pluggable model explained
Cubes – pluggable model explainedCubes – pluggable model explained
Cubes – pluggable model explained
 
Cubes – ways of deployment
Cubes – ways of deploymentCubes – ways of deployment
Cubes – ways of deployment
 
Knowledge Management Lecture 4: Models
Knowledge Management Lecture 4: ModelsKnowledge Management Lecture 4: Models
Knowledge Management Lecture 4: Models
 
Dallas Data Brewery Meetup #2: Data Quality Perception
Dallas Data Brewery Meetup #2: Data Quality PerceptionDallas Data Brewery Meetup #2: Data Quality Perception
Dallas Data Brewery Meetup #2: Data Quality Perception
 
Dallas Data Brewery - introduction
Dallas Data Brewery - introductionDallas Data Brewery - introduction
Dallas Data Brewery - introduction
 
Bubbles – Virtual Data Objects
Bubbles – Virtual Data ObjectsBubbles – Virtual Data Objects
Bubbles – Virtual Data Objects
 
Python business intelligence (PyData 2012 talk)
Python business intelligence (PyData 2012 talk)Python business intelligence (PyData 2012 talk)
Python business intelligence (PyData 2012 talk)
 
Cubes - Lightweight Python OLAP (EuroPython 2012 talk)
Cubes - Lightweight Python OLAP (EuroPython 2012 talk)Cubes - Lightweight Python OLAP (EuroPython 2012 talk)
Cubes - Lightweight Python OLAP (EuroPython 2012 talk)
 
Knowledge Management Lecture 3: Cycle
Knowledge Management Lecture 3: CycleKnowledge Management Lecture 3: Cycle
Knowledge Management Lecture 3: Cycle
 
Knowledge Management Lecture 2: Individuals, communities and organizations
Knowledge Management Lecture 2: Individuals, communities and organizationsKnowledge Management Lecture 2: Individuals, communities and organizations
Knowledge Management Lecture 2: Individuals, communities and organizations
 
Knowledge Management Lecture 1: definition, history and presence
Knowledge Management Lecture 1: definition, history and presenceKnowledge Management Lecture 1: definition, history and presence
Knowledge Management Lecture 1: definition, history and presence
 
Open spending as-is 2011-06
Open spending   as-is 2011-06Open spending   as-is 2011-06
Open spending as-is 2011-06
 
Cubes - Lightweight OLAP Framework
Cubes - Lightweight OLAP FrameworkCubes - Lightweight OLAP Framework
Cubes - Lightweight OLAP Framework
 
Open Data Decentralisation
Open Data DecentralisationOpen Data Decentralisation
Open Data Decentralisation
 
Data Cleansing introduction (for BigClean Prague 2011)
Data Cleansing introduction (for BigClean Prague 2011)Data Cleansing introduction (for BigClean Prague 2011)
Data Cleansing introduction (for BigClean Prague 2011)
 
Knowledge Management Introduction
Knowledge Management IntroductionKnowledge Management Introduction
Knowledge Management Introduction
 

Recently uploaded

THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptxTHE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptxNandakishor Bhaurao Deshmukh
 
Microphone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptxMicrophone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptxpriyankatabhane
 
User Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather StationUser Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather StationColumbia Weather Systems
 
Four Spheres of the Earth Presentation.ppt
Four Spheres of the Earth Presentation.pptFour Spheres of the Earth Presentation.ppt
Four Spheres of the Earth Presentation.pptJoemSTuliba
 
Citronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyayCitronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyayupadhyaymani499
 
Behavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdfBehavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdfSELF-EXPLANATORY
 
FREE NURSING BUNDLE FOR NURSES.PDF by na
FREE NURSING BUNDLE FOR NURSES.PDF by naFREE NURSING BUNDLE FOR NURSES.PDF by na
FREE NURSING BUNDLE FOR NURSES.PDF by naJASISJULIANOELYNV
 
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdf
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdfPests of Blackgram, greengram, cowpea_Dr.UPR.pdf
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdfPirithiRaju
 
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptxSTOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptxMurugaveni B
 
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptxECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptxmaryFF1
 
Carbon Dioxide Capture and Storage (CSS)
Carbon Dioxide Capture and Storage (CSS)Carbon Dioxide Capture and Storage (CSS)
Carbon Dioxide Capture and Storage (CSS)Tamer Koksalan, PhD
 
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 GenuineCall Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuinethapagita
 
Davis plaque method.pptx recombinant DNA technology
Davis plaque method.pptx recombinant DNA technologyDavis plaque method.pptx recombinant DNA technology
Davis plaque method.pptx recombinant DNA technologycaarthichand2003
 
Pests of soyabean_Binomics_IdentificationDr.UPR.pdf
Pests of soyabean_Binomics_IdentificationDr.UPR.pdfPests of soyabean_Binomics_IdentificationDr.UPR.pdf
Pests of soyabean_Binomics_IdentificationDr.UPR.pdfPirithiRaju
 
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCRCall Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCRlizamodels9
 
Speech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxSpeech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxpriyankatabhane
 
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...lizamodels9
 
Topic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxTopic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxJorenAcuavera1
 
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...D. B. S. College Kanpur
 

Recently uploaded (20)

THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptxTHE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
THE ROLE OF PHARMACOGNOSY IN TRADITIONAL AND MODERN SYSTEM OF MEDICINE.pptx
 
Microphone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptxMicrophone- characteristics,carbon microphone, dynamic microphone.pptx
Microphone- characteristics,carbon microphone, dynamic microphone.pptx
 
User Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather StationUser Guide: Magellan MX™ Weather Station
User Guide: Magellan MX™ Weather Station
 
Four Spheres of the Earth Presentation.ppt
Four Spheres of the Earth Presentation.pptFour Spheres of the Earth Presentation.ppt
Four Spheres of the Earth Presentation.ppt
 
Citronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyayCitronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyay
 
Behavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdfBehavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdf
 
FREE NURSING BUNDLE FOR NURSES.PDF by na
FREE NURSING BUNDLE FOR NURSES.PDF by naFREE NURSING BUNDLE FOR NURSES.PDF by na
FREE NURSING BUNDLE FOR NURSES.PDF by na
 
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdf
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdfPests of Blackgram, greengram, cowpea_Dr.UPR.pdf
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdf
 
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptxSTOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
STOPPED FLOW METHOD & APPLICATION MURUGAVENI B.pptx
 
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptxECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
ECG Graph Monitoring with AD8232 ECG Sensor & Arduino.pptx
 
Carbon Dioxide Capture and Storage (CSS)
Carbon Dioxide Capture and Storage (CSS)Carbon Dioxide Capture and Storage (CSS)
Carbon Dioxide Capture and Storage (CSS)
 
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 GenuineCall Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
Call Girls in Majnu Ka Tilla Delhi 🔝9711014705🔝 Genuine
 
Davis plaque method.pptx recombinant DNA technology
Davis plaque method.pptx recombinant DNA technologyDavis plaque method.pptx recombinant DNA technology
Davis plaque method.pptx recombinant DNA technology
 
Pests of soyabean_Binomics_IdentificationDr.UPR.pdf
Pests of soyabean_Binomics_IdentificationDr.UPR.pdfPests of soyabean_Binomics_IdentificationDr.UPR.pdf
Pests of soyabean_Binomics_IdentificationDr.UPR.pdf
 
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCRCall Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
 
Speech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxSpeech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptx
 
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
 
Volatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -IVolatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -I
 
Topic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxTopic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptx
 
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
 

Sepro - introduction

  • 1. SEPRO System for modeling and simulation of qualitative network dynamics Stefan Urbanek – stefan.urbanek@gmail.com – @Stiivi Jan 2018
  • 3. OBJECTIVES ▪︎ Test alternative approach for simulation of network problems ▪︎ Examine possibility of purely qualitative approach ▪︎ Find primitives of non-conventional computation of network problem solving ▪︎ Develop a simulator prototype and set of models that demonstrate the system
  • 4. SYSTEM DESIGN PRINCIPLES ▪︎ Completeness and clarity of model description ▪︎ Minimal set of assumptions ▪︎ No explicit control flow ▪︎ Iterative simulation and parallel in nature
  • 6. Model observation initial structure concepts (symbol semantics) actuators graph probes metadata
  • 7. MODEL ▪︎ Simulated universe is a directed graph of objects ▪︎ Objects have only qualitative properties ▪︎ State transition is triggered either by existing state or potential interaction of two objects ▪︎ State changes can happen only locally* to the transitioning or interacting objects * graph distance of 1; see “Local Context” later
  • 8. OBJECT slot s3 s2 s1 t3 t1 t2 t4 tags Indivisible entity representing an instance of relevant concept within simulated universe.
  • 9. TAG t3 t1 t2 t4 tags Qualitative property of an object. State of an object is denoted by a set of tags.
  • 10. SLOT slot s3 s2 s1 Slots are properties of an objects that reference other objects. Slots represent a directed labelled edge of the object graph.
  • 12. MODEL DYNAMICS object state changes and graph modification
  • 13. CONCEPTS ▪︎ Actuator – atomic description of state change ▪︎ Selector – match pattern for objects subject to transition ▪︎ Transition/Modifier – description of state change affects either object’s state or local* relationships * graph distance of 1; see “Local Context” later
  • 14. “LOCAL” CONTEXT p selected a c b indirect a indirect b out of sight out of sight out of sight q r Design limitation (intentional): Object state and graph transitions can happen only within distance of 1 from the selected object.
  • 15. ACTUATORS selector this WHERE DO modifiers control selector modifiersselector this other controlWHERE ON DO unary binary transition of object’s state and local* relationships based on previous object’s state transition of state of either of two objects based on states of objects in a tuple from a cartesian product of specific objects
  • 16. SELECTOR evaluated t1 t2 t1 t2 may be selected tested dereferenced slot WHERE IN … evaluated may be selected t1 t2 tested … evaluated WHERE … SET tags UNSET tags BOUND slots UNBOUND slots direct indirect – distance 1
  • 17. SELECTOR TESTS ▪︎ SET: all of selector tags are associated with an object true if selector’s tags ⊂ object’s tags ▪︎ UNSET: none of selector tags are associated with an object true if object’s tags ∩ selector’s tags = ∅ ▪︎ BOUND: graph contains an edge from selector’s slots ▪︎ UNBOUND: graph does not contain an edge from selector’s slots
  • 19. STATE MODIFIER ▪︎ SET tags: associate set of tag symbols with an object result = object tags ∪ modifier tags ▪︎ UNSET tags: disassociate set of tag symbols with an object result = object tags - modifier tags
  • 20. GRAPH EDGE MODIFIERS ▪︎ BIND slot reference → target create an edge in the graph ▪︎ UNBIND slot reference remove an edge in the graph
  • 21. UNARY BINDING MODIFIER unbind direct subject u IN t s s t t s s t t s t u s u IN ts t u s -> THIS s -> t s -> t.u THISthis this this this this t this t u u t t s -> NONE self-bind clone pull t unbind indirect subject s u t u this.t s s.u -> THIS s.u -> t this this.s s uthis s this this.s t u this.t s this s back-self connect
  • 22. BINARY BINDING MODIFIER direct subject sshand handother otherjoin other IN LEFT s -> OTHER IN RIGHT s -> OTHER Intentionally unavailable state transitions of binary modifiers by design: unbind – combination of binary state change and unary modifier indirect – combination of binary direct subject, state change and unary modifier
  • 23. OF MODIFIERS ▪︎ Proposed modifiers are assumed to be sufficient to achieve any potential graph configuration. ▪︎ All state changes beyond distance of 1 from the selected object must be composed of multiple transitions that propagate through the network. ▪︎ Susceptibility to being affected by other actuators along the way is intended design feature.
  • 24. ACTUATORS – PRINCIPLES ▪︎ Order of applying actuators is not predetermined ▪︎ Order of actuators being applied might affect some simulations
  • 25. CONTROL SIGNALLING ▪︎ NOTIFY: signal (symbols) to the simulator without interruption Use case: monitor reached goals; trigger/start/stop measurement; visualize a state of interest ▪︎ TRAP: signal (symbols) and interrupt the simulator (resumable) Use case: goal reached and user interaction is expected; a product has been created ▪︎ HALT: signal to the simulator and interrupt (non-resumable) Use case: invalid state has been reached, resuming the simulation might yield non-sensical results
  • 26. MODIFIERS SUMMARY BIND slot → NONE BIND slot → OTHER BIND slot → OTHER.target_slot BIND indirect.slot → NONE BIND indirect.slot → OTHER BIND indirect.slot → OTHER.target_slot BIND slot → NONE BIND slot → SELF BIND slot → target_slot BIND slot → t.w BIND indirect.slot → NONE BIND indirect.slot → SELF BIND indirect.slot → target_stlot BIND indirect.s → t.w binary unary
  • 27. EXAMPLE: “LINKER” Model example in Sepro 2014-16 prototype
  • 28. Objective: Build a chain of elements. Components: - links to be chained - object binding two links together Catch: Introduce fake link component and observe what happens.
  • 29. OBJECTS linker left right link next CONCEPT linker TAG ready SLOT left, right CONCEPT link TAG free SLOT next CONCEPT fault # We pretend to be a link, but there is no 'next' slot TAG link, free Sepro 2016
  • 30. ACTUATORS WHERE linker AND NOT BOUND left ON link, free DO BIND left TO other IN other UNSET free SET one WHERE one ON link AND free DO BIND right TO other IN other UNSET free UNSET one SET two Reminder: although this model works as it is, we don’t know how it will behave when composed with other actuators. WHERE two DO IN this.left BIND next TO this.right UNSET two SET advance WHERE advance DO BIND left TO this.right UNSET advance SET cleanup WHERE cleanup DO UNBIND right UNSET cleanup SET one Sepro 2016
  • 31. WORLD WORLD main OBJECT fault OBJECT link * 35 OBJECT linker * 3 Sepro 2016
  • 32. RESULT1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
  • 34. COUNTERS slot s3 s2 s1 t3 t1 t2 t4 c1 c2 c3 counters tags t1 t3t2 … c1 c2 Tags: Counters: Slots: s1 s2 s3 c3 ↓ ↓ ↓ qualitative quantitative relational REJECTED Quantitative properties
  • 35. ROOT OBJECT ▪︎ Single object referred to as ROOT from anywhere in the simulation. ▪︎ Can be tested for and can be acted upon. ▪︎ Rejected due to potential abuse for globally accessible state which would defeat the whole purpose of the system to be based on local interactions. REJECTED
  • 37. SEPRO 2018 GOALS ▪︎ Simplified and formalized selectors and modifiers ▪︎ Removed redundancy – focus on primitives ▪︎ Prototype/referential implementation
  • 38. Unary Actuator Binary Actuator Selector Structure Relationship [Symbol:Prototype]prototypes relationships Prototype {Symbol}tags Relationship Symbol Symbol Symbol to slot from Unary Actuator Control [Subject Mode: Unary Transition] Selector control selector transitions Control Bool {Symbol} {Symbol} halts traps notifications Selector ∑ Selector Patternmatch all match Unary Target ∑ Slot subject indirect in subject unbind slot Slotin Slotslot Unary Transition [Symbol:Unary Target] Symbol Mask bindings tags Constraint: if Effective Slot is indirect, target mode must not be indirect. Binary Transition [Symbol:Binary Target] Symbol Mask bindings tags Binary Actuator Control [Subject Mode: Binary Transition] [Subject Mode: Binary Transition] Selector Selector control right transitions left transitions left selector right selector Binary Target ∑ Slot other in other unbind slot Model [Symbol:Binary Actuator] [Symbol:SymbolType] [Symbol:Unary Actuator] [Symbol:Structure] binary actuators symbols unary actuators structures Presence ∑ present absent s → none s → self s → t s → t.w i.s → none i.s → self i.s → t i.s → t.w s → none s → other s → other.t i.s → none i.s → other i.s → other.t Structure {Type} [Type:Type] [Type] Type? Type set dictionary array optional base Sum Type ∑ case 2 case 1 Symbol Type ∑ slot tag label Legend Sepro-18 Entities Selector Pattern Symbol Mask Symbol Mask slots tags Symbol Mask [Symbol:Presence]mask Subject Mode ∑ Slotindirect direct slot left right controlWHERE ON IN LEFT IN RIGHT left target right target transitions transitionsselector selector this WHERE IN THIS controlselector transition this target
  • 40. ▪︎ Model composition Merging actuators and concepts from multiple models together into one. ▪︎ Constraints Spatial or other constraints for selectors, for example grids. ▪︎ Symbol abstraction/inheritance Classification of symbols (primarily for tags) into hierarchies. Example: test for liquid would match water if such hierarchical association exists.
  • 41. “SCI-FI” ▪︎ establish equivalence of Sepro primitives (virtual) and physical systems