msc in computer engineering - unipi.it ami, using stigmergy... · msc in computer engineering ......
TRANSCRIPT
University of Pisa
MSc in Computer Engineering
System Software for Ambient Intelligence
Using Stigmergy to enable Pervasive Computing
Mario G. Cimino, Department of Information Engineering, Center for Logistics Systems
Pisa, May 14-15, 2013, 08.30-10.30, Room: Lab Blu
Cimino – Using Stigmergy to enable Pervasive Computing – 2 of 53
1st
Scenario: product recall
A product recall in a simplified supply chain
Cimino – Using Stigmergy to enable Pervasive Computing – 3 of 53
Requirements
Heterogeneous structure of data: common semantics;
Confidentiality and Control of Data: pull/push model;
Cimino – Using Stigmergy to enable Pervasive Computing – 4 of 53
Interconnectivity Level: RFID, a key sensing technology in the vision of
the Internet of Things (EPCglobal)
Integration level: from Service-Oriented composition to Multi-Agent
cooperation
Cimino – Using Stigmergy to enable Pervasive Computing – 5 of 53
Service Oriented Architecture
Dynamic composite application (consumer-centric);
Services do not say ‘no’;
From Integration (technical) to Interoperability (semantic);
Cimino – Using Stigmergy to enable Pervasive Computing – 6 of 53
Deployment Diagram of the Traceability System. Self-management.
Self-organization. Self-configuration. Autonomic Computing (IBM).
Cimino – Using Stigmergy to enable Pervasive Computing – 7 of 53
A BPMN Business process flow representation, for the production of a
bag
Cimino – Using Stigmergy to enable Pervasive Computing – 8 of 53
Communication Diagram of the Traceability System
Cimino – Using Stigmergy to enable Pervasive Computing – 9 of 53
Collaborative Agent: an example of query translation from XSLT to
SQL
Cimino – Using Stigmergy to enable Pervasive Computing – 10 of 53
User Agent: context-aware interfaces of a Terminal Unit for different
situations.
Cimino – Using Stigmergy to enable Pervasive Computing – 11 of 53
Simplified State Diagram of a Multi-Choice context Terminal Unit
Cimino – Using Stigmergy to enable Pervasive Computing – 12 of 53
Software products used for the system implementation
SYSTEM COMPNENT SOFTWARE PRODUCT REFERENCES
Storing Unit,
Context Unit,
Register Unit
Java SE 1.6 http://dev.mysql.com
MySql 5 http://java.sun.com/javase
Apache Tomcat 6 http://tomcat.apache.org
ISO 15000-2 Interface Hermes Message Service
Handler 2
http://www.freebxml.org
Terminal Unit Microsoft Windows Mobile 5 http://www.microsoft.com
.NET Compact Framework 2 http://www.microsoft.com
Analysis Unit Compiere ERP 2 http://www.compiere.com
Oracle 10g http://www.oracle.com
Hardware products used for the MOAT system implementation
SYSTEM
COMPONENT
HARDWARE PRODUCT REFERENCES
Terminal Unit
(for indoor use)
HP Ipaq HX2490 PDA http://www.hp.com
Compact Flash Reader: CFR-F13-56 http://www.rf-id.it
Terminal Unit
(for outdoor use)
Psion TekLogix, with OEM
COM3 HF Reader: CPRM02
http://www.psion.com
http://www.rf-id.it
RFID HF tag Work-Tag Film labels http://www.rf-id.it
Wireless
Gateway
Linksys WAG300N http://www.linksysbycisco.com
Cimino – Using Stigmergy to enable Pervasive Computing – 13 of 53
1st
Conclusion
Agent-Oriented Computing vs Object/Service-Oriented Computing
Agents as a new paradigm for software engineering
Networked systems and organizations
Dynamic interdependency
Limited knowledge and control
Openness and uncertainties
Cooperation paradigms
Agents with Intentionality
Agents with Autonomy
Agents with Sociality
Agents with Rational Self-interest
Cimino – Using Stigmergy to enable Pervasive Computing – 14 of 53
2nd
Scenario: service recommender
Cimino – Using Stigmergy to enable Pervasive Computing – 15 of 53
Upper Context Ontology
Cimino – Using Stigmergy to enable Pervasive Computing – 16 of 53
A SWRL rule in: (a) human readable syntax and (b) natural language
Cimino – Using Stigmergy to enable Pervasive Computing – 17 of 53
Component diagram of a situation reasoner
Cimino – Using Stigmergy to enable Pervasive Computing – 18 of 53
ECAA, an extension of the Event-Control-Action pattern for situation
awareness
Cimino – Using Stigmergy to enable Pervasive Computing – 19 of 53
Communication diagram for the situation reasoning process.
Cimino – Using Stigmergy to enable Pervasive Computing – 20 of 53
Linguistic variable partitions for the pharmaceutical consultant case
study: (a) defined by a domain expert and (b) tuned by the GA
Adaptable systems are customizedby the users themselves, whereas with
adaptive systems this process works automatically
Cimino – Using Stigmergy to enable Pervasive Computing – 21 of 53
From Cognitivist to emergent approach
Cognitivist approach: representation, concept formation, reasoning,
functionalism
Emergent approach: intrinsic embodiment with data/physical
instantiation.
From algorithms to data.
Stigmergy
Grassé (1959), biologist, proposed the theory of stigmergy while
observing termites.
Meaning: “incite to work by product of work”
stigma, wound from a pointed object;
ergon, work, product of labour
stimulating product of labour
Cimino – Using Stigmergy to enable Pervasive Computing – 22 of 53
Stigmergy: Indirect communication among components of self-organizing
system
Occurs through modifications brought by individual components to their
local environment
Pheromone, a chemical volatile substance, deposited into environment by
individual, and retrieved (sensed) from other individual
Stigmergy allows coordination without central control
Attractive effect, positive feedback
Cimino – Using Stigmergy to enable Pervasive Computing – 23 of 53
Examples of stigmergy
Ants’ Trails
Termites Mounds
Pheromone description:
Life time, e.g. 30 min – 60 min
Frequency of marking, e.g. 5 marks / 20 cm
Quantity of pheromone deposited
Type of pheromone: alarm pheromones, food trail pheromones
Cimino – Using Stigmergy to enable Pervasive Computing – 24 of 53
Termites
The termites follow a set of simple rules.
Each termite starts wandering randomly.
If it bumps into a wood chip, it picks the chip up, and continues to
wander randomly.
When it bumps into another wood chip, it finds a nearby empty space
and puts its wood chip down.
With these simple rules, the wood chips eventually end up in a single
pile.
Cimino – Using Stigmergy to enable Pervasive Computing – 25 of 53
http://ccl.northwestern.edu/netlogo/models/Termites
Cimino – Using Stigmergy to enable Pervasive Computing – 26 of 53
Ant foraging
A colony of ants forages for food. Though each ant follows a set of
simple rules, the colony as a whole acts in a sophisticated way.
When an ant finds a piece of food, it carries the food back to the nest,
dropping a chemical as it moves.
When other ants "sniff" the chemical, they follow the chemical toward
the food. As more ants carry food to the nest, they reinforce the chemical
trail.
The ant colony generally exploits the food source in order, starting with
the food closest to the nest, and finishing with the food most distant from
the nest.
Cimino – Using Stigmergy to enable Pervasive Computing – 27 of 53
It is more difficult for the ants to form a stable trail to the more distant
food, since the chemical trail has more time to evaporate and diffuse
before being reinforced.
Once the colony finishes collecting the closest food, the chemical trail to
that food naturally disappears, freeing up ants to help collect the other
food sources.
The more distant food sources require a larger "critical number" of ants
to form a stable trail.
Cimino – Using Stigmergy to enable Pervasive Computing – 28 of 53
http://ccl.northwestern.edu/netlogo/models/run.cgi?Ants.790.569
Cimino – Using Stigmergy to enable Pervasive Computing – 29 of 53
Other models
http://ccl.northwestern.edu/netlogo/models/
Exercises: run a new model of the page, and discuss the emergent
phenomena.
Cimino – Using Stigmergy to enable Pervasive Computing – 30 of 53
3rd
Scenario: Collaborative situation awareness via position-based stigmergy
An ontological view of the collaborative situation-aware scheme for mobile
service recommendation (no user calendar)
Cimino – Using Stigmergy to enable Pervasive Computing – 31 of 53
Deployment diagram of the architecture
Cimino – Using Stigmergy to enable Pervasive Computing – 32 of 53
Rules of the Situation Agent
Cimino – Using Stigmergy to enable Pervasive Computing – 33 of 53
Architecture of the adopted neuro-fuzzy network for adjusting rules
Cimino – Using Stigmergy to enable Pervasive Computing – 34 of 53
Communication diagram for the situation reasoning process
Cimino – Using Stigmergy to enable Pervasive Computing – 35 of 53
GPS data for a scenario involving t participants to a meeting
Cimino – Using Stigmergy to enable Pervasive Computing – 36 of 53
Tracks of the participants for scenario
Cimino – Using Stigmergy to enable Pervasive Computing – 37 of 53
Marking intensities in a pre-meeting situations
Cimino – Using Stigmergy to enable Pervasive Computing – 38 of 53
Marking intensities in a meeting situations
Cimino – Using Stigmergy to enable Pervasive Computing – 39 of 53
4th
Scenario: from position-based to motion-based stigmergy, from mobility/proximity to synchrony
Cimino – Using Stigmergy to enable Pervasive Computing – 40 of 53
Communication diagram of the main modules
Cimino – Using Stigmergy to enable Pervasive Computing – 41 of 53
A pilot scenario of vertical acceleration magnitude against time, with 4
sensored oars: raw samples
Cimino – Using Stigmergy to enable Pervasive Computing – 42 of 53
A pilot scenario of vertical acceleration magnitude against time, with 4
sensored oars: (b) after a moving average filter with a span of 5.
Cimino – Using Stigmergy to enable Pervasive Computing – 43 of 53
A pilot scenario of vertical acceleration magnitude against time, with 4
sensored oars: (c) after a low-pass filtering with a cutoff frequency of 20 Hz.
Cimino – Using Stigmergy to enable Pervasive Computing – 44 of 53
A single triangular mark released in the sensing space by a marking agent
(solid line), together with the same mark after a step of decay (dashed line).
Cimino – Using Stigmergy to enable Pervasive Computing – 45 of 53
An example of four accumulated marks (coloured lines) and of collective
mark (black line) created in the sensing space at the instant t=3.22 s by
the signal of Fig. 4
Cimino – Using Stigmergy to enable Pervasive Computing – 46 of 53
An example of close-to-optimal accumulated and collective marks,
belonging to the pilot scenario
Cimino – Using Stigmergy to enable Pervasive Computing – 47 of 53
An example of marks produced by poorly synchronized rowing strokes
(solid lines) with the reference marks (dashed lines)
Cimino – Using Stigmergy to enable Pervasive Computing – 48 of 53
A visual representation of the Similarity between two marks
Cimino – Using Stigmergy to enable Pervasive Computing – 49 of 53
Similarity of the accumulated marks and collective mark with their
references, in the pilot scenario
Cimino – Using Stigmergy to enable Pervasive Computing – 50 of 53
A scenario of about 12 seconds, with individual (in colour) and collective (in
black) asynchrony, as a result of a micro-granulation with ∆=800.
Cimino – Using Stigmergy to enable Pervasive Computing – 51 of 53
The same scenario after s-shape activation
Cimino – Using Stigmergy to enable Pervasive Computing – 52 of 53
overall system architecture (boat)
Cimino – Using Stigmergy to enable Pervasive Computing – 53 of 53