MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ......

53
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

Transcript of MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ......

Page 1: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 2: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 2 of 53

1st

Scenario: product recall

A product recall in a simplified supply chain

Page 3: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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;

Page 4: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 5: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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);

Page 6: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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).

Page 7: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 7 of 53

A BPMN Business process flow representation, for the production of a

bag

Page 8: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 8 of 53

Communication Diagram of the Traceability System

Page 9: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 9 of 53

Collaborative Agent: an example of query translation from XSLT to

SQL

Page 10: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 10 of 53

User Agent: context-aware interfaces of a Terminal Unit for different

situations.

Page 11: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 11 of 53

Simplified State Diagram of a Multi-Choice context Terminal Unit

Page 12: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 13: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 14: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 14 of 53

2nd

Scenario: service recommender

Page 15: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 15 of 53

Upper Context Ontology

Page 16: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 16 of 53

A SWRL rule in: (a) human readable syntax and (b) natural language

Page 17: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 17 of 53

Component diagram of a situation reasoner

Page 18: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 18 of 53

ECAA, an extension of the Event-Control-Action pattern for situation

awareness

Page 19: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 19 of 53

Communication diagram for the situation reasoning process.

Page 20: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 21: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 22: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 23: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 24: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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.

Page 25: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 25 of 53

http://ccl.northwestern.edu/netlogo/models/Termites

Page 26: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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.

Page 27: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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.

Page 28: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 28 of 53

http://ccl.northwestern.edu/netlogo/models/run.cgi?Ants.790.569

Page 29: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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.

Page 30: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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)

Page 31: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 31 of 53

Deployment diagram of the architecture

Page 32: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 32 of 53

Rules of the Situation Agent

Page 33: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 33 of 53

Architecture of the adopted neuro-fuzzy network for adjusting rules

Page 34: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 34 of 53

Communication diagram for the situation reasoning process

Page 35: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 35 of 53

GPS data for a scenario involving t participants to a meeting

Page 36: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 36 of 53

Tracks of the participants for scenario

Page 37: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 37 of 53

Marking intensities in a pre-meeting situations

Page 38: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 38 of 53

Marking intensities in a meeting situations

Page 39: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 39 of 53

4th

Scenario: from position-based to motion-based stigmergy, from mobility/proximity to synchrony

Page 40: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 40 of 53

Communication diagram of the main modules

Page 41: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 42: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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.

Page 43: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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.

Page 44: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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).

Page 45: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 46: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 47: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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)

Page 48: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 48 of 53

A visual representation of the Similarity between two marks

Page 49: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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

Page 50: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

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.

Page 51: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 51 of 53

The same scenario after s-shape activation

Page 52: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 52 of 53

overall system architecture (boat)

Page 53: MSc in Computer Engineering - unipi.it AmI, Using Stigmergy... · MSc in Computer Engineering ... Service Oriented Architecture Dynamic composite application ... after a low-pass

Cimino – Using Stigmergy to enable Pervasive Computing – 53 of 53