SlideShare a Scribd company logo
1 of 62
Download to read offline
Micro-intelligence for the IoT
Teaching the Old Logic Dog New Programming Tricks
Andrea Omicini
andrea.omicini@unibo.it
Dipartimento di Informatica ā€“ Scienza e Ingegneria (DISI), Universit`a di Bologna
Invited Talk @ 18th Workshop ā€œFrom Objects to Agentsā€ (WOA 2017)
Scilla, RC, Italy, 16 June 2017
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 1 / 62
Summary
Abstract
New application scenarios for pervasive intelligent systems open novel
perspectives for logic-based approaches, in particular when coupled
with agent-based technologies and methods. In this explorative talk we
provide some examples of how logic programming and its extensions
can work as sources of micro-intelligence for the IoT, at both the
individual and the collective level, along with an overall architectural
view of IoT systems exploiting logic-based technologies.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 2 / 62
Outline
1 Trends
New Scenarios
New Technologies
New Requirements
2 The Logic Programming Road to Micro-intelligence
Faux Pas
Steps in the Right Directions
LP for the IoIT
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 3 / 62
Trends
Next in Line. . .
1 Trends
2 The Logic Programming Road to Micro-intelligence
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 4 / 62
Trends New Scenarios
Focus on. . .
1 Trends
New Scenarios
New Technologies
New Requirements
2 The Logic Programming Road to Micro-intelligence
Faux Pas
Steps in the Right Directions
LP for the IoIT
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 5 / 62
Trends New Scenarios
Knowledge-Intensive Environments (KIE)
Information galore
ubiquitous knowledge sources growing in number and size
knowledge prosumers in socio-technical systems (STS) [Whitworth, 2006]
application goals more and more depending on information available
in the environment [Mariani and Omicini, 2013]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 6 / 62
Trends New Scenarios
Pervasive Intelligence
Intelligence everywhere
computation is everywhere around us
software components are required to behave intelligently,
understanding their own goals and the context where they have to
work
integration of software components is supposed to add social
intelligence, possibly through coordination [Castelfranchi, 1998]
pervasive computing nowadays calls for ubiquitous intelligence
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 7 / 62
Trends New Scenarios
Internet of Intelligent Things (IoIT)
Intelligent objects in the IoT
our everyday physical objects should be able to network in the Internet
of Things (IoT) [Gubbi et al., 2013, Atzori et al., 2010, Fortino et al., 2014]
they are required to understand each other, to learn, to understand
situations, to understand us [Lippi et al., 2017]
our everyday object should be(come) intelligent in the Internet of
Intelligent Things (IoIT) [ArsĀ“enio et al., 2014]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 8 / 62
Trends New Technologies
Focus on. . .
1 Trends
New Scenarios
New Technologies
New Requirements
2 The Logic Programming Road to Micro-intelligence
Faux Pas
Steps in the Right Directions
LP for the IoIT
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 9 / 62
Trends New Technologies
Agent-Oriented Computing
Agents & multi-agent systems (MAS)
agents are the most viable abstraction to encapsulate fundamental
features such as control, goals, mobility, intelligence
[Zambonelli and Omicini, 2004]
MAS abstractions such as society and environment are essential to
cope with the complexity of nowadays application scenarios
[Omicini and Mariani, 2013]
agent-oriented models and technologies are gaining momentum for
embedding decentralised intelligence [Singh and Chopra, 2017]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 10 / 62
Trends New Technologies
Semantic Technologies
Semantic Web to eļ¬€ectively share information between humans and
software agents
ontologies
standard inter-agent communication languages [FIPA ACL, 2002]
conversational technologies and systems [Nishida et al., 2014]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 11 / 62
Trends New Technologies
Everything as a Service (XaaS)
in order to promote maximum availability and interoperability, any
resource of any sort should be accessible as a service
possibly, an intelligent one
through standard network operations
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 12 / 62
Trends New Technologies
. . . and Many Others
ubiquitous artiļ¬cial intelligence
Big Data
intelligente sensing
. . .
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 13 / 62
Trends New Requirements
Focus on. . .
1 Trends
New Scenarios
New Technologies
New Requirements
2 The Logic Programming Road to Micro-intelligence
Faux Pas
Steps in the Right Directions
LP for the IoIT
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 14 / 62
Trends New Requirements
Observability
observability is essential for understanding execution of distributed
systems [Tanenbaum and van Steen, 2007]ā€”as in the case of stateless
communication in REST
mutual observation is a pre-condition for many forms of cognitive
agent coordinationā€”e.g., behavioural implicit communication (BIC)
[Castelfranchi et al., 2010]
inspectability an essential feature for online engineering
[Fredriksson and Gustavsson, 2004]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 15 / 62
Trends New Requirements
Malleability
the ability of changing / adapting at run time is a pre-condition for
most forms of self-adaptive / self-organising systems
e.g. malleability of coordination artefacts allows for self-organisation
patterns in MAS [Viroli et al., 2005]
e.g. malleability of a Prolog engine allow for adaptive intelligent
middleware [Piancastelli et al., 2008]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 16 / 62
Trends New Requirements
Understandability
We need explanations
it is not enough for systems to work
we need to understand themā€”otherwise, it is not diļ¬€erent from magic
e.g. decision support systems need not just to propose solutions, but also
to motivate them
e.g. the problem with deep learning
e.g. engineering systems with self-organisation techniques mandates some
for of system predictability
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 17 / 62
Trends New Requirements
Formalisability
We need to be sure
it is not enough for systems to work
we need to know how they will behaveā€”otherwise, it could be
dangerous, or, unacceptable, or, . . .
e.g. we like to add features of self-organising systems to our systemsā€”but,
we need to foresee their evolution over time, at least in general terms
e.g. complex systems are generally unpredictable, however we would need
at least partial predictability of their behaviour when we engineer them
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 18 / 62
Trends New Requirements
Norm Compliance
Systems & norms
if computational systems are pervasive, and aļ¬€ect every aspects of
our everyday life, they are subject of all the norms ruling human
individual and social behaviour
norm compliance should be enforced by computational systems,
starting from the earliest phases of software engineering
normative reasoning should become part of the intelligent behaviour
of components and systems
accountability, traceability, and responsibility should be part of each
component and every system
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 19 / 62
Trends New Requirements
Widespread Intelligence
Component- & system level
every single component is expected to behave and interact
intelligently
every group of interacting components ā€“ e.g., agent societies ā€“ should
integrate so as to produce intelligent collective behaviours
overall system behaviourā€”ok, intelligent
! of course, the diverse levels are connected, but do not imply each
other
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 20 / 62
The Logic Programming Road to Micro-intelligence
Next in Line. . .
1 Trends
2 The Logic Programming Road to Micro-intelligence
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 21 / 62
The Logic Programming Road to Micro-intelligence Faux Pas
Focus on. . .
1 Trends
New Scenarios
New Technologies
New Requirements
2 The Logic Programming Road to Micro-intelligence
Faux Pas
Steps in the Right Directions
LP for the IoIT
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 22 / 62
The Logic Programming Road to Micro-intelligence Faux Pas
Why Logic Programming for Intelligent Systems? I
General features of Logic Programming (LP)
computation as deduction
declarative and procedural interpretation match
reasoning about what is true rather than about what to do
logic theories as programs and knowledge bases
programming with relations and inferences
non-typed tree structures for uniform data representation
uniļ¬cation as a non-directional mechanism for message passing
single-assignment variables, step-by-step reļ¬nement
reasoning with incomplete information
non determinism
interactive computational model
. . .
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 23 / 62
The Logic Programming Road to Micro-intelligence Faux Pas
Why Logic Programming for Intelligent Systems? II
Overall
LP languages and technologies
represent in principle the most natural candidates for
injecting intelligence
within computational systems
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 24 / 62
The Logic Programming Road to Micro-intelligence Faux Pas
Why Logic Programming for Distributed Systems? I
Early days
since the early days of logic programming, features like
high-level languages
non-determinism
referential transparency
made the potential for exploitation of parallelism in the execution of
logic programs clearly emerge [Gupta et al., 2001]
at the same time, the articulation of logic computation, with the
frequent occurrence of
heavy computational load
non-trivial computational structures
made the computational techniques developed for logic languages
relevant for the general scenario of concurrent / parallel computation
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 25 / 62
The Logic Programming Road to Micro-intelligence Faux Pas
Why Logic Programming for Distributed Systems? II
Or- & and-parallelism
logic languages like Prolog allow for parallel evaluation
the proof tree could be explored parallel / concurrently
even more, the potential computational complexity of the proof tree
actually encourages parallel exploration
basically, Prolog supports two sorts of parallelism
and-parallelism
or-parallelism
ļ¬tting distributed computing
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 26 / 62
The Logic Programming Road to Micro-intelligence Faux Pas
Logic Programming: Issues I
Why did LP never really take oļ¬€?
computational costs too high, machinery too huge
not really suited for programming in the largeā€”intrinsic modularity (predicates)
does not really scales up, modules are not enough
a novel programming paradigm requires huge eļ¬€orts by programmers
ā€œno typesā€ makes it diļ¬ƒcult (also) to deal with domain-speciļ¬c applications
how to deal with non determinism?
distance from mainstream programming paradigms potentially harms conceptual
integrity
troublesome integration with mainstream technologies
. . .
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 27 / 62
The Logic Programming Road to Micro-intelligence Faux Pas
Logic Programming: Issues II
LP for distributed systems?
mostly, distributed computing for LPā€”to share the huge computational load
distributed computing is not the same as distributed systems, at least according to
their historical meaningsā€”per se, LP does not work for distributed systems
interactive computational model works locallyā€”one user querying one engine
the universal notion of consistency of logic theory does not cope well with the
incompleteness and inconsistency intrinsically implied by the needs of distributed
pervasive systems
LP technology does not always integrate well with available tools and technologies
for distributed pervasive systems
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 28 / 62
The Logic Programming Road to Micro-intelligence Steps in the Right Directions
Focus on. . .
1 Trends
New Scenarios
New Technologies
New Requirements
2 The Logic Programming Road to Micro-intelligence
Faux Pas
Steps in the Right Directions
LP for the IoIT
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 29 / 62
The Logic Programming Road to Micro-intelligence Steps in the Right Directions
Ubiquitous Declarative Languages and Technologies
Declarative languages and technologies
SQL and its derivatives are everywhere in databases and knowledge
sources of any sort
XML and its applications are the de facto standard for the Web as
well as for most of the novel application scenarios at any level
even the shift in object-oriented programming from classes to
interfaces in some sense represents a shift towards declarativeness
declarative models and technologies play an essential roles in
agent-oriented computing [Omicini and Zambonelli, 2004]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 30 / 62
The Logic Programming Road to Micro-intelligence Steps in the Right Directions
New LP Technologies
Essential features
minimal and conļ¬gurable engines running without heavy
computational costs [Denti et al., 2001]
multi-platform technology, including resource-constrained devices
[Denti et al., 2013]
interoperability with widespread languages, technologies, and
standards
clean model integration for conceptual integrity [Denti et al., 2005]
e.g. tuProlog http://tuprolog.unibo.it
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 31 / 62
The Logic Programming Road to Micro-intelligence Steps in the Right Directions
Distributing Logic Programs
Concurrent logic processes
processes represented by logic processes in concurrent systems
logic agents in the acceptation of coordination models [Ciancarini, 1996]
there, concurrent / distributed systems are ļ¬rst of all collection of
logic engines running in a concurrent / distributed way [Robertson, 2004]
e.g. Shared Prolog [Brogi and Ciancarini, 1991], ACLT [Denti et al., 1996]
ā†’ moving LP towards distributed systems and MAS [Baldoni et al., 2010]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 32 / 62
The Logic Programming Road to Micro-intelligence Steps in the Right Directions
Logic-based Coordination
Logic tuple spaces
the space of interaction is built around logic tuple spaces
[Ciancarini, 1994, Denti et al., 1996]
allowing for heterogeneous distributed processes to be coordinated
blackboards and programmable logic tuple spaces promote logic-based
coordination of distributed systems
e.g. Shared Prolog [Brogi and Ciancarini, 1991], ReSpecT [Omicini and Denti, 2001]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 33 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Focus on. . .
1 Trends
New Scenarios
New Technologies
New Requirements
2 The Logic Programming Road to Micro-intelligence
Faux Pas
Steps in the Right Directions
LP for the IoIT
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 34 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Micro-intelligence for the IoT
IoT scenarios (and CPS as well) mandates for distributed & situated
micro-intelligence
huge numbers of small unit of computation
situated within a spatially-distributed environment
promoting the local exploitation of high-level symbolic languages
with inferential capabilities
? what role could the LP models and technologies play in such
scenarios?
? what LP for the IoIT? [ArsĀ“enio et al., 2014]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 35 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Distributing Intelligence through Logic Engines I
Distributed logic engines
lightweight and interoperable Prolog engines could be distributed even
on resource-constrained devices [Denti et al., 2013]
multiple logic theories are then scattered around, encapsulated in
each engine, and associated to individual computational devices and
things in the IoT
each logic theory is situated, and represents what is true locally,
according to a simple paraconsistent interpretation
LP resolution process is local to each theory / engine, so it is both
standard and consistent [Robinson, 1965]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 36 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Distributing Intelligence through Logic Engines II
Our example: tuProlog
tuProlog http://tuprolog.unibo.it
is a light-weight Prolog system for distributed applications and
infrastructures [Denti et al., 2001]
is intentionally designed around a minimal core
can be either statically or dynamically conļ¬gured by
loading/unloading libraries of predicates
natively supports multi-paradigm programming [Denti et al., 2005],
providing a clean, seamless integration model between Prolog and
mainstream object-oriented languages
runs on most known platforms and devices
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 37 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Dealing with Situatedness & Domain-speciļ¬c Scenarios I
pervasive applications typically demands for domain-speciļ¬c
approaches
multiple, heterogeneous devices in the IoT usually have speciļ¬c
application goals and manage speciļ¬c sorts of information
situatedness require reactivity to environment change
! LP is general enough to deal with whatever, but never speciļ¬c enough
to do it well
many speciļ¬c logics exist to deal with many diverse application
scenariosā€”e.g., S4 modal logic for spatial computing
LP can be extended to capture diļ¬€erent logic and domains
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 38 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Dealing with Situatedness & Domain-speciļ¬c Scenarios II
Our example: Labelled Variables in Logic Programming
In Labelled Variables in Logic Programming (LVLP) [Calegari et al., 2016a]
logic variable can be associated to a label
labels are domain-speciļ¬c
each logic engine can be conļ¬gured with its own set of
domain-speciļ¬c label, along with the speciļ¬c functions to interfere
with the logic resolution process, without losing declarativeness
labels allows for a customisable computational model (domain-speciļ¬c
labelled system) bound to the standard LP computation
e.g. a wardrobe could host a LVLP engine whose labelled system represent
its content, and helps in dress selection [Calegari et al., 2016a]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 39 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Making LP Available in Distributed Systems I
LP promotes interactive programming, even though one user / one
engine sort
in order to meet the needs of nowadays distributed systems, a more
standard approach should be adopted, in terms of both architecture
and technology
possibly subsuming standard LP interaction
e.g. providing logic engines (theories, inference, resolution) as a service, so
that standard distributed components and applications could exploit
them
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 40 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Making LP Available in Distributed Systems II
Our example: Logic Programming as a Service
Logic Programming as a Service (LPaaS) [Calegari et al., 2016b]
provides an abstract view of an LP inference engine in terms of service
promotes interoperability, encapsulation, and situatedness, as well as
context-awareness
each logic engine exposes its services concurrently to multiple clients,
via two interfaces (client and conļ¬gurator)
preserving the standard resolution process
providing for both stateless and stateful client-server interaction
promoting time-sensitive and space-sensitive computation
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 41 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Logic-based Coordination Artefacts I
Coordination artefacts
encapsulate coordination policies for distributed systems
can inject social intelligence within computational systems
[Castelfranchi, 1998]
can be observable and malleable [Omicini et al., 2008]
Logic-based coordination artefacts
represent coordination policies declaratively
pave the way towards (partial) formalisation of complex systems
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 42 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Logic-based Coordination Artefacts II
Our example: ReSpecT coordination artefacts
ReSpecT coordination artefacts (LPaaS) [Omicini, 2007]
are inspectable and malleable
can express any Turing-computable coordination policy [Denti et al., 1998]
there, both communication and coordination theories are ļ¬rst-order
logic theories
can be used within the TuCSoN middleware for MAS coordination
[Omicini and Zambonelli, 1999]
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 43 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Logic-based Middleware I
Distributed logic agents and logic engines
Overall
distributing logic engines
conļ¬guring them as services
allowing logic-based agents to roam around
making agents interact with each other and exploiting logic services
coordinating logic agents and engines / services
suggest that a LP-based middleware would be of some help for the
engineering of intelligent pervasive and IoT applications
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 44 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Logic-based Middleware II
Our example: work in progress
Thesis by Alberto Sita, in cooperation with Roberta Calegari, Enrico
Denti, Stefano Mariani
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 45 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Overall View I
LP for the IoIT
distributed logic engines for widespread micro-intelligence
exploited as standard services by components of any sorts, including
intelligent agents
situated and domain-speciļ¬c extensions to meet the demand of IoT
coordinated via logic-based artefacts, encapsulating social intelligence
based on a logic-based middleware
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 46 / 62
The Logic Programming Road to Micro-intelligence LP for the IoIT
Overall View II
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 47 / 62
Further Work & Conclusion
Next in Line. . .
1 Trends
2 The Logic Programming Road to Micro-intelligence
3 Further Work & Conclusion
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 48 / 62
Further Work & Conclusion
Further Work
porting tuProlog on most popular resource-constraint devices
full implementation of LPaaS in tuProlog
full-ļ¬‚edged logic-based middleware architecture and technology
testing in real-world applications
general formalisation of the framework
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 49 / 62
Further Work & Conclusion
Conclusion
Micro-intelligence for the IoIT
the requirements of pervasive and IoIT systems include widespread
intelligence
LP-based languages and technologies have the potential to work as
the sources of micro-intelligence encapsulated within devices of any
sort, and to make them work together in groups, aggregates, societies
by promoting observability, malleability, understandability,
formalisability, and norm compliance
! provided that LP legacy works as a rich platform for future
developments rather than a huge burden
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 50 / 62
References
References I
ArsĀ“enio, A., Serra, H., Francisco, R., Nabais, F., Andrade, J., and Serrano, E. (2014).
Internet of Intelligent Things: Bringing artiļ¬cial intelligence into things and
communication networks.
In Inter-cooperative Collective Intelligence: Techniques and Applications, volume 495 of
Studies in Computational Intelligence, pages 1ā€“37. Springer Berlin Heidelberg.
Atzori, L., Iera, A., and Morabito, G. (2010).
The Internet of Things: A survey.
Computer Networks, 54(15):2787ā€“2805.
Baldoni, M., Baroglio, C., Mascardi, V., Omicini, A., and Torroni, P. (2010).
Agents, Multi-Agent Systems and Declarative Programming: Who, What, When, Where,
Why, How?
In Dovier, A. and Pontelli, E., editors, A 25 Year Perspective on Logic Programming.
Achievements of the Italian Association for Logic Programming, GULP, LNAI:
State-of-the-Art Survey, chapter 10, pages 200ā€“225. Springer.
Brogi, A. and Ciancarini, P. (1991).
The concurrent language, Shared Prolog.
ACM Transactions on Programming Languages and Systems, 13(1):99ā€“123.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 51 / 62
References
References II
Calegari, R., Denti, E., Dovier, A., and Omicini, A. (2016a).
Labelled variables in logic programming: Foundations.
In Fiorentini, C. and Momigliano, A., editors, CILC 2016 ā€“ Italian Conference on
Computational Logic, volume 1645 of CEUR Workshop Proceedings, pages 5ā€“20, Milano,
Italy. CEUR-WS.
Proceedings of the 31st Italian Conference on Computational Logic.
Calegari, R., Denti, E., Mariani, S., and Omicini, A. (2016b).
Towards logic programming as a service: Experiments in tuProlog.
In Santoro, C., Messina, F., and De Benedetti, M., editors, WOA 2016 ā€“ 17th Workshop
ā€œFrom Objects to Agentsā€, volume 1664 of CEUR Workshop Proceedings, pages 91ā€“99.
Sun SITE Central Europe, RWTH Aachen University.
Proceedings of the 17th Workshop ā€œFrom Objects to Agentsā€ co-located with 18th
European Agent Systems Summer School (EASSS 2016).
Castelfranchi, C. (1998).
Modelling social action for AI agents.
Artiļ¬cial Intelligence, 103(1-2):157ā€“182.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 52 / 62
References
References III
Castelfranchi, C., Pezzullo, G., and Tummolini, L. (2010).
Behavioral implicit communication (BIC): Communicating with smart environments via our
practical behavior and its traces.
International Journal of Ambient Computing and Intelligence, 2(1):1ā€“12.
Ciancarini, P. (1994).
Distributed programming with logic tuple spaces.
New Generation Computing, 12(3):251ā€“283.
Ciancarini, P. (1996).
Coordination models and languages as software integrators.
ACM Computing Surveys, 28(2):300ā€“302.
Denti, E., Natali, A., and Omicini, A. (1998).
On the expressive power of a language for programming coordination media.
In 1998 ACM Symposium on Applied Computing (SACā€™98), pages 169ā€“177, Atlanta, GA,
USA. ACM.
Special Track on Coordination Models, Languages and Applications.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 53 / 62
References
References IV
Denti, E., Natali, A., Omicini, A., and Venuti, M. (1996).
Logic tuple spaces for the coordination of heterogeneous agents.
In Baader, F. and Schulz, K. U., editors, Frontiers of Combining Systems, volume 3 of
Applied Logic Series, pages 147ā€“160, Munich, Germany. Kluwer Academic Publishers.
Denti, E., Omicini, A., and Calegari, R. (2013).
tuProlog: Making Prolog ubiquitous.
ALP Newsletter.
Denti, E., Omicini, A., and Ricci, A. (2001).
tuProlog: A light-weight Prolog for Internet applications and infrastructures.
In Ramakrishnan, I., editor, Practical Aspects of Declarative Languages, volume 1990 of
LNCS, pages 184ā€“198. Springer.
3rd International Symposium (PADL 2001), Las Vegas, NV, USA, 11ā€“12 March 2001.
Proceedings.
Denti, E., Omicini, A., and Ricci, A. (2005).
Multi-paradigm Java-Prolog integration in tuProlog.
Science of Computer Programming, 57(2):217ā€“250.
FIPA ACL (2002).
Agent Communication Language Speciļ¬cations.
Foundation for Intelligent Physical Agents (FIPA).
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 54 / 62
References
References V
Fortino, G., Guerrieri, A., Russo, W., and Savaglio, C. (2014).
Integration of agent-based and Cloud Computing for the smart objects-oriented IoT.
In 2014 IEEE 18th International Conference on Computer Supported Cooperative Work in
Design (CSCWD), pages 493ā€“498.
Fredriksson, M. and Gustavsson, R. (2004).
Online engineering and open computational systems.
In Bergenti, F., Gleizes, M.-P., and Zambonelli, F., editors, Methodologies and Software
Engineering for Agent Systems: The Agent-Oriented Software Engineering Handbook,
volume 11 of Multiagent Systems, Artiļ¬cial Societies, and Simulated Organization, pages
377ā€“388. Kluwer Academic Publishers.
Gubbi, J., Buyya, R., Marusic, S., and Palaniswami, M. (2013).
Internet of Things (IoT): A vision, architectural elements, and future directions.
Future Generation Computer Systems, 29(7):1645ā€“1660.
Gupta, G., Pontelli, E., Ali, K. A., Carlsson, M., and Hermenegildo, M. V. (2001).
Parallel execution of Prolog programs: a survey.
ACM Transactions on Programming Languages and Systems, 23(4):472ā€“602.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 55 / 62
References
References VI
Lippi, M., Mamei, M., Mariani, S., and Zambonelli, F. (2017).
Coordinating distributed speaking objects.
In 37th IEEE International Conference on Distributed Computing Systems (ICDCS 2017).
IEEE Computer Society.
Mariani, S. and Omicini, A. (2013).
Molecules of Knowledge: Self-organisation in knowledge-intensive environments.
In Fortino, G., BĖ˜adicĖ˜a, C., Malgeri, M., and Unland, R., editors, Intelligent Distributed
Computing VI, volume 446 of Studies in Computational Intelligence, pages 17ā€“22.
Springer.
6th International Symposium on Intelligent Distributed Computing (IDC 2012), Calabria,
Italy, 24-26 September 2012. Proceedings.
Nishida, T., Nakazawa, A., Ohmoto, Y., and Mohammad, Y. (2014).
Conversational Informatics. A Data-Intensive Approach with Emphasis on Nonverbal
Communication.
Springer Japan, Tokyo.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 56 / 62
References
References VII
Omicini, A. (2007).
Formal ReSpecT in the A&A perspective.
Electronic Notes in Theoretical Computer Science, 175(2):97ā€“117.
5th International Workshop on Foundations of Coordination Languages and Software
Architectures (FOCLASAā€™06), CONCURā€™06, Bonn, Germany, 31 August 2006.
Post-proceedings.
Omicini, A. and Denti, E. (2001).
From tuple spaces to tuple centres.
Science of Computer Programming, 41(3):277ā€“294.
Omicini, A. and Mariani, S. (2013).
Agents & multiagent systems: En route towards complex intelligent systems.
Intelligenza Artiļ¬ciale, 7(2):153ā€”164.
Special Issue Celebrating 25 years of the Italian Association for Artiļ¬cial Intelligence.
Omicini, A., Ricci, A., and Viroli, M. (2008).
Artifacts in the A&A meta-model for multi-agent systems.
Autonomous Agents and Multi-Agent Systems, 17(3):432ā€“456.
Special Issue on Foundations, Advanced Topics and Industrial Perspectives of Multi-Agent
Systems.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 57 / 62
References
References VIII
Omicini, A. and Zambonelli, F. (1999).
Coordination for Internet application development.
Autonomous Agents and Multi-Agent Systems, 2(3):251ā€“269.
Special Issue: Coordination Mechanisms for Web Agents.
Omicini, A. and Zambonelli, F. (2004).
MAS as complex systems: A view on the role of declarative approaches.
In Leite, J. A., Omicini, A., Sterling, L., and Torroni, P., editors, Declarative Agent
Languages and Technologies, volume 2990 of LNCS, pages 1ā€“17. Springer.
1st International Workshop (DALT 2003), Melbourne, Australia, 15 July 2003. Revised
Selected and Invited Papers.
Piancastelli, G., Benini, A., Omicini, A., and Ricci, A. (2008).
The architecture and design of a malleable object-oriented Prolog engine.
In Wainwright, R. L., Haddad, H. M., Menezes, R., and Viroli, M., editors, 23rd ACM
Symposium on Applied Computing (SAC 2008), volume 1, pages 191ā€“197, Fortaleza,
CearĀ“a, Brazil. ACM.
Special Track on Programming Languages.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 58 / 62
References
References IX
Robertson, D. (2004).
Multi-agent coordination as Distributed Logic Programming.
In Demoen, B. and Lifschitz, V., editors, Logic Programming. 20th International
Conference, ICLP 2004, Saint-Malo, France, September 6-10, 2004. Proceedings, volume
3132, pages 416ā€“430. Springer.
Robinson, J. A. (1965).
A machine-oriented logic based on the resolution principle.
Journal of the ACM, 12(1):23ā€“41.
Singh, M. P. and Chopra, A. K. (2017).
The Internet of Things and multiagent systems: Decentralized intelligence in distributed
computing.
In 37th IEEE International Conference on Distributed Computing Systems (ICDCS 2017).
IEEE Computer Society.
Tanenbaum, A. S. and van Steen, M. (2007).
Distributed Systems. Principles and Paradigms.
Pearson Prentice Hall, Upper Saddle River, NJ, USA, 2nd edition.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 59 / 62
References
References X
Viroli, M., Omicini, A., and Ricci, A. (2005).
Engineering MAS environment with artifacts.
In Weyns, D., Parunak, H. V. D., and Michel, F., editors, 2nd International Workshop
ā€œEnvironments for Multi-Agent Systemsā€ (E4MAS 2005), pages 62ā€“77, AAMAS 2005,
Utrecht, The Netherlands.
Whitworth, B. (2006).
Socio-technical systems.
In Ghaou, C., editor, Encyclopedia of Human Computer Interaction, pages 533ā€“541. IGI
Global.
Zambonelli, F. and Omicini, A. (2004).
Challenges and research directions in agent-oriented software engineering.
Autonomous Agents and Multi-Agent Systems, 9(3):253ā€“283.
Special Issue: Challenges for Agent-Based Computing.
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 60 / 62
Extras
URLs
Slides
On APICe
ā†’ http://apice.unibo.it/xwiki/bin/view/Talks/MicrointelligenceWoa2017
On SlideShare
ā†’ http://www.slideshare.net/andreaomicini/microintelligence-for-the-iot-
teaching-the-old-logic-dog-new-programming-tricks
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 61 / 62
Micro-intelligence for the IoT
Teaching the Old Logic Dog New Programming Tricks
Andrea Omicini
andrea.omicini@unibo.it
Dipartimento di Informatica ā€“ Scienza e Ingegneria (DISI), Universit`a di Bologna
Invited Talk @ 18th Workshop ā€œFrom Objects to Agentsā€ (WOA 2017)
Scilla, RC, Italy, 16 June 2017
Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 62 / 62

More Related Content

Similar to Micro-intelligence for the IoT: Teaching the Old Logic Dog New Programming Tricks

Injecting (Micro)Intelligence in the IoT: Logic-based Approaches for (M)MAS
Injecting (Micro)Intelligence in the IoT: Logic-based Approaches for (M)MASInjecting (Micro)Intelligence in the IoT: Logic-based Approaches for (M)MAS
Injecting (Micro)Intelligence in the IoT: Logic-based Approaches for (M)MASAndrea Omicini
Ā 
Human-in-the-loop in IoT Systems
Human-in-the-loop in IoT SystemsHuman-in-the-loop in IoT Systems
Human-in-the-loop in IoT SystemsFulvio Corno
Ā 
Explainable Pervasive Intelligence with Self-explaining Agents
Explainable Pervasive Intelligence with Self-explaining AgentsExplainable Pervasive Intelligence with Self-explaining Agents
Explainable Pervasive Intelligence with Self-explaining AgentsAndrea Omicini
Ā 
The role of individuals and communities in IoT
The role of individuals and communities in IoT The role of individuals and communities in IoT
The role of individuals and communities in IoT Paola Negrin
Ā 
ARTIFICIAL INTELLIGENCE IN METAVERSE
ARTIFICIAL INTELLIGENCE IN METAVERSEARTIFICIAL INTELLIGENCE IN METAVERSE
ARTIFICIAL INTELLIGENCE IN METAVERSEIRJET Journal
Ā 
Towards XMAS: eXplainability through Multi-Agent Systems
Towards XMAS: eXplainability through Multi-Agent SystemsTowards XMAS: eXplainability through Multi-Agent Systems
Towards XMAS: eXplainability through Multi-Agent SystemsGiovanni Ciatto
Ā 
Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...
Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...
Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...Universita della Calabria,
Ā 
Webinos approach in IOT
Webinos approach in IOTWebinos approach in IOT
Webinos approach in IOTMonika Keerthi
Ā 
seminar report on ambient intelligent
seminar report on ambient intelligentseminar report on ambient intelligent
seminar report on ambient intelligentAnkita Srivastava
Ā 
A Literature Review On Internet Of Things (IoT)
A Literature Review On Internet Of Things (IoT)A Literature Review On Internet Of Things (IoT)
A Literature Review On Internet Of Things (IoT)April Smith
Ā 
Humans vs the Internet of Things
Humans vs the Internet of ThingsHumans vs the Internet of Things
Humans vs the Internet of ThingsFulvio Corno
Ā 
Not just for humans: Explanation for agent-to-agent communication
Not just for humans: Explanation for agent-to-agent communicationNot just for humans: Explanation for agent-to-agent communication
Not just for humans: Explanation for agent-to-agent communicationAndrea Omicini
Ā 
Workshop on Software Engineering for Cognitive Services
Workshop on Software Engineering for Cognitive ServicesWorkshop on Software Engineering for Cognitive Services
Workshop on Software Engineering for Cognitive Servicesrmikkilineni
Ā 
Ajit Jaokar, Data Science for IoT professor at Oxford University ā€œEnterprise ...
Ajit Jaokar, Data Science for IoT professor at Oxford University ā€œEnterprise ...Ajit Jaokar, Data Science for IoT professor at Oxford University ā€œEnterprise ...
Ajit Jaokar, Data Science for IoT professor at Oxford University ā€œEnterprise ...Dataconomy Media
Ā 
Research in Internet of Things' Operating Systems (IoT OS's)
Research in Internet of Things' Operating Systems (IoT OS's)Research in Internet of Things' Operating Systems (IoT OS's)
Research in Internet of Things' Operating Systems (IoT OS's)Salahuddin ElKazak
Ā 
Conversational Informatics: From Conversational Systems to Communication Inte...
Conversational Informatics: From Conversational Systems to Communication Inte...Conversational Informatics: From Conversational Systems to Communication Inte...
Conversational Informatics: From Conversational Systems to Communication Inte...Andrea Omicini
Ā 
Oss2015
Oss2015Oss2015
Oss2015GESSI UPC
Ā 
Artificial intelligence in cyber physical systems
Artificial intelligence in cyber physical systemsArtificial intelligence in cyber physical systems
Artificial intelligence in cyber physical systemsPetar Radanliev
Ā 

Similar to Micro-intelligence for the IoT: Teaching the Old Logic Dog New Programming Tricks (20)

Injecting (Micro)Intelligence in the IoT: Logic-based Approaches for (M)MAS
Injecting (Micro)Intelligence in the IoT: Logic-based Approaches for (M)MASInjecting (Micro)Intelligence in the IoT: Logic-based Approaches for (M)MAS
Injecting (Micro)Intelligence in the IoT: Logic-based Approaches for (M)MAS
Ā 
Human-in-the-loop in IoT Systems
Human-in-the-loop in IoT SystemsHuman-in-the-loop in IoT Systems
Human-in-the-loop in IoT Systems
Ā 
Explainable Pervasive Intelligence with Self-explaining Agents
Explainable Pervasive Intelligence with Self-explaining AgentsExplainable Pervasive Intelligence with Self-explaining Agents
Explainable Pervasive Intelligence with Self-explaining Agents
Ā 
The role of individuals and communities in IoT
The role of individuals and communities in IoT The role of individuals and communities in IoT
The role of individuals and communities in IoT
Ā 
ARTIFICIAL INTELLIGENCE IN METAVERSE
ARTIFICIAL INTELLIGENCE IN METAVERSEARTIFICIAL INTELLIGENCE IN METAVERSE
ARTIFICIAL INTELLIGENCE IN METAVERSE
Ā 
Towards XMAS: eXplainability through Multi-Agent Systems
Towards XMAS: eXplainability through Multi-Agent SystemsTowards XMAS: eXplainability through Multi-Agent Systems
Towards XMAS: eXplainability through Multi-Agent Systems
Ā 
Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...
Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...
Ph.D. Thesis: A Methodology for the Development of Autonomic and Cognitive In...
Ā 
PhD Admission Pitching
PhD Admission PitchingPhD Admission Pitching
PhD Admission Pitching
Ā 
Webinos approach in IOT
Webinos approach in IOTWebinos approach in IOT
Webinos approach in IOT
Ā 
seminar report on ambient intelligent
seminar report on ambient intelligentseminar report on ambient intelligent
seminar report on ambient intelligent
Ā 
M018138085
M018138085M018138085
M018138085
Ā 
A Literature Review On Internet Of Things (IoT)
A Literature Review On Internet Of Things (IoT)A Literature Review On Internet Of Things (IoT)
A Literature Review On Internet Of Things (IoT)
Ā 
Humans vs the Internet of Things
Humans vs the Internet of ThingsHumans vs the Internet of Things
Humans vs the Internet of Things
Ā 
Not just for humans: Explanation for agent-to-agent communication
Not just for humans: Explanation for agent-to-agent communicationNot just for humans: Explanation for agent-to-agent communication
Not just for humans: Explanation for agent-to-agent communication
Ā 
Workshop on Software Engineering for Cognitive Services
Workshop on Software Engineering for Cognitive ServicesWorkshop on Software Engineering for Cognitive Services
Workshop on Software Engineering for Cognitive Services
Ā 
Ajit Jaokar, Data Science for IoT professor at Oxford University ā€œEnterprise ...
Ajit Jaokar, Data Science for IoT professor at Oxford University ā€œEnterprise ...Ajit Jaokar, Data Science for IoT professor at Oxford University ā€œEnterprise ...
Ajit Jaokar, Data Science for IoT professor at Oxford University ā€œEnterprise ...
Ā 
Research in Internet of Things' Operating Systems (IoT OS's)
Research in Internet of Things' Operating Systems (IoT OS's)Research in Internet of Things' Operating Systems (IoT OS's)
Research in Internet of Things' Operating Systems (IoT OS's)
Ā 
Conversational Informatics: From Conversational Systems to Communication Inte...
Conversational Informatics: From Conversational Systems to Communication Inte...Conversational Informatics: From Conversational Systems to Communication Inte...
Conversational Informatics: From Conversational Systems to Communication Inte...
Ā 
Oss2015
Oss2015Oss2015
Oss2015
Ā 
Artificial intelligence in cyber physical systems
Artificial intelligence in cyber physical systemsArtificial intelligence in cyber physical systems
Artificial intelligence in cyber physical systems
Ā 

More from Andrea Omicini

Measuring Trustworthiness in Neuro-Symbolic Integration
Measuring Trustworthiness in Neuro-Symbolic IntegrationMeasuring Trustworthiness in Neuro-Symbolic Integration
Measuring Trustworthiness in Neuro-Symbolic IntegrationAndrea Omicini
Ā 
On the Integration of Symbolic and Sub-symbolic ā€“ Explaining by Design
On the Integration of Symbolic and Sub-symbolic ā€“ Explaining by DesignOn the Integration of Symbolic and Sub-symbolic ā€“ Explaining by Design
On the Integration of Symbolic and Sub-symbolic ā€“ Explaining by DesignAndrea Omicini
Ā 
Blockchain for Intelligent Systems: Research Perspectives
Blockchain for Intelligent Systems: Research PerspectivesBlockchain for Intelligent Systems: Research Perspectives
Blockchain for Intelligent Systems: Research PerspectivesAndrea Omicini
Ā 
Complexity in computational systems: the coordination perspective
Complexity in computational systems: the coordination perspectiveComplexity in computational systems: the coordination perspective
Complexity in computational systems: the coordination perspectiveAndrea Omicini
Ā 
Nature-inspired Coordination: Current Status and Research Trends
Nature-inspired Coordination: Current Status and Research TrendsNature-inspired Coordination: Current Status and Research Trends
Nature-inspired Coordination: Current Status and Research TrendsAndrea Omicini
Ā 
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...Andrea Omicini
Ā 
Logic Programming as a Service (LPaaS): Intelligence for the IoT
Logic Programming as a Service (LPaaS): Intelligence for the IoTLogic Programming as a Service (LPaaS): Intelligence for the IoT
Logic Programming as a Service (LPaaS): Intelligence for the IoTAndrea Omicini
Ā 
Privacy through Anonymisation in Large-scale Socio-technical Systems: The BIS...
Privacy through Anonymisation in Large-scale Socio-technical Systems: The BIS...Privacy through Anonymisation in Large-scale Socio-technical Systems: The BIS...
Privacy through Anonymisation in Large-scale Socio-technical Systems: The BIS...Andrea Omicini
Ā 
ABMS in m-Health Self-Management
ABMS in m-Health Self-ManagementABMS in m-Health Self-Management
ABMS in m-Health Self-ManagementAndrea Omicini
Ā 
Game Engines to Model MAS: A Research Roadmap
Game Engines to Model MAS: A Research RoadmapGame Engines to Model MAS: A Research Roadmap
Game Engines to Model MAS: A Research RoadmapAndrea Omicini
Ā 
Multi-paradigm Coordination for MAS
Multi-paradigm Coordination for MASMulti-paradigm Coordination for MAS
Multi-paradigm Coordination for MASAndrea Omicini
Ā 
Towards Logic Programming as a Service: Experiments in tuProlog
Towards Logic Programming as a Service: Experiments in tuPrologTowards Logic Programming as a Service: Experiments in tuProlog
Towards Logic Programming as a Service: Experiments in tuPrologAndrea Omicini
Ā 
Spatial Multi-Agent Systems
Spatial Multi-Agent SystemsSpatial Multi-Agent Systems
Spatial Multi-Agent SystemsAndrea Omicini
Ā 
Foundations of Multi-Agent Systems
Foundations of Multi-Agent SystemsFoundations of Multi-Agent Systems
Foundations of Multi-Agent SystemsAndrea Omicini
Ā 
Academic Publishing in the Digital Era: A Couple of Issues (Open Accessā€”Well,...
Academic Publishing in the Digital Era: A Couple of Issues (Open Accessā€”Well,...Academic Publishing in the Digital Era: A Couple of Issues (Open Accessā€”Well,...
Academic Publishing in the Digital Era: A Couple of Issues (Open Accessā€”Well,...Andrea Omicini
Ā 
Self-organisation of Knowledge in Socio-technical Systems: A Coordination Per...
Self-organisation of Knowledge in Socio-technical Systems: A Coordination Per...Self-organisation of Knowledge in Socio-technical Systems: A Coordination Per...
Self-organisation of Knowledge in Socio-technical Systems: A Coordination Per...Andrea Omicini
Ā 
Anticipatory Coordination in Socio-technical Knowledge-intensive Environments...
Anticipatory Coordination in Socio-technical Knowledge-intensive Environments...Anticipatory Coordination in Socio-technical Knowledge-intensive Environments...
Anticipatory Coordination in Socio-technical Knowledge-intensive Environments...Andrea Omicini
Ā 
Blending Event-Based and Multi-Agent Systems around Coordination Abstractions
Blending Event-Based and Multi-Agent Systems around Coordination AbstractionsBlending Event-Based and Multi-Agent Systems around Coordination Abstractions
Blending Event-Based and Multi-Agent Systems around Coordination AbstractionsAndrea Omicini
Ā 
Event-Based vs. Multi-Agent Systems: Towards a Unified Conceptual Framework
Event-Based vs. Multi-Agent Systems: Towards a Unified Conceptual FrameworkEvent-Based vs. Multi-Agent Systems: Towards a Unified Conceptual Framework
Event-Based vs. Multi-Agent Systems: Towards a Unified Conceptual FrameworkAndrea Omicini
Ā 
The Distributed Autonomy. Software Abstractions and Technologies for Autonomo...
The Distributed Autonomy. Software Abstractions and Technologies for Autonomo...The Distributed Autonomy. Software Abstractions and Technologies for Autonomo...
The Distributed Autonomy. Software Abstractions and Technologies for Autonomo...Andrea Omicini
Ā 

More from Andrea Omicini (20)

Measuring Trustworthiness in Neuro-Symbolic Integration
Measuring Trustworthiness in Neuro-Symbolic IntegrationMeasuring Trustworthiness in Neuro-Symbolic Integration
Measuring Trustworthiness in Neuro-Symbolic Integration
Ā 
On the Integration of Symbolic and Sub-symbolic ā€“ Explaining by Design
On the Integration of Symbolic and Sub-symbolic ā€“ Explaining by DesignOn the Integration of Symbolic and Sub-symbolic ā€“ Explaining by Design
On the Integration of Symbolic and Sub-symbolic ā€“ Explaining by Design
Ā 
Blockchain for Intelligent Systems: Research Perspectives
Blockchain for Intelligent Systems: Research PerspectivesBlockchain for Intelligent Systems: Research Perspectives
Blockchain for Intelligent Systems: Research Perspectives
Ā 
Complexity in computational systems: the coordination perspective
Complexity in computational systems: the coordination perspectiveComplexity in computational systems: the coordination perspective
Complexity in computational systems: the coordination perspective
Ā 
Nature-inspired Coordination: Current Status and Research Trends
Nature-inspired Coordination: Current Status and Research TrendsNature-inspired Coordination: Current Status and Research Trends
Nature-inspired Coordination: Current Status and Research Trends
Ā 
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
Ā 
Logic Programming as a Service (LPaaS): Intelligence for the IoT
Logic Programming as a Service (LPaaS): Intelligence for the IoTLogic Programming as a Service (LPaaS): Intelligence for the IoT
Logic Programming as a Service (LPaaS): Intelligence for the IoT
Ā 
Privacy through Anonymisation in Large-scale Socio-technical Systems: The BIS...
Privacy through Anonymisation in Large-scale Socio-technical Systems: The BIS...Privacy through Anonymisation in Large-scale Socio-technical Systems: The BIS...
Privacy through Anonymisation in Large-scale Socio-technical Systems: The BIS...
Ā 
ABMS in m-Health Self-Management
ABMS in m-Health Self-ManagementABMS in m-Health Self-Management
ABMS in m-Health Self-Management
Ā 
Game Engines to Model MAS: A Research Roadmap
Game Engines to Model MAS: A Research RoadmapGame Engines to Model MAS: A Research Roadmap
Game Engines to Model MAS: A Research Roadmap
Ā 
Multi-paradigm Coordination for MAS
Multi-paradigm Coordination for MASMulti-paradigm Coordination for MAS
Multi-paradigm Coordination for MAS
Ā 
Towards Logic Programming as a Service: Experiments in tuProlog
Towards Logic Programming as a Service: Experiments in tuPrologTowards Logic Programming as a Service: Experiments in tuProlog
Towards Logic Programming as a Service: Experiments in tuProlog
Ā 
Spatial Multi-Agent Systems
Spatial Multi-Agent SystemsSpatial Multi-Agent Systems
Spatial Multi-Agent Systems
Ā 
Foundations of Multi-Agent Systems
Foundations of Multi-Agent SystemsFoundations of Multi-Agent Systems
Foundations of Multi-Agent Systems
Ā 
Academic Publishing in the Digital Era: A Couple of Issues (Open Accessā€”Well,...
Academic Publishing in the Digital Era: A Couple of Issues (Open Accessā€”Well,...Academic Publishing in the Digital Era: A Couple of Issues (Open Accessā€”Well,...
Academic Publishing in the Digital Era: A Couple of Issues (Open Accessā€”Well,...
Ā 
Self-organisation of Knowledge in Socio-technical Systems: A Coordination Per...
Self-organisation of Knowledge in Socio-technical Systems: A Coordination Per...Self-organisation of Knowledge in Socio-technical Systems: A Coordination Per...
Self-organisation of Knowledge in Socio-technical Systems: A Coordination Per...
Ā 
Anticipatory Coordination in Socio-technical Knowledge-intensive Environments...
Anticipatory Coordination in Socio-technical Knowledge-intensive Environments...Anticipatory Coordination in Socio-technical Knowledge-intensive Environments...
Anticipatory Coordination in Socio-technical Knowledge-intensive Environments...
Ā 
Blending Event-Based and Multi-Agent Systems around Coordination Abstractions
Blending Event-Based and Multi-Agent Systems around Coordination AbstractionsBlending Event-Based and Multi-Agent Systems around Coordination Abstractions
Blending Event-Based and Multi-Agent Systems around Coordination Abstractions
Ā 
Event-Based vs. Multi-Agent Systems: Towards a Unified Conceptual Framework
Event-Based vs. Multi-Agent Systems: Towards a Unified Conceptual FrameworkEvent-Based vs. Multi-Agent Systems: Towards a Unified Conceptual Framework
Event-Based vs. Multi-Agent Systems: Towards a Unified Conceptual Framework
Ā 
The Distributed Autonomy. Software Abstractions and Technologies for Autonomo...
The Distributed Autonomy. Software Abstractions and Technologies for Autonomo...The Distributed Autonomy. Software Abstractions and Technologies for Autonomo...
The Distributed Autonomy. Software Abstractions and Technologies for Autonomo...
Ā 

Recently uploaded

Pests of safflower_Binomics_Identification_Dr.UPR.pdf
Pests of safflower_Binomics_Identification_Dr.UPR.pdfPests of safflower_Binomics_Identification_Dr.UPR.pdf
Pests of safflower_Binomics_Identification_Dr.UPR.pdfPirithiRaju
Ā 
The dark energy paradox leads to a new structure of spacetime.pptx
The dark energy paradox leads to a new structure of spacetime.pptxThe dark energy paradox leads to a new structure of spacetime.pptx
The dark energy paradox leads to a new structure of spacetime.pptxEran Akiva Sinbar
Ā 
TOPIC 8 Temperature and Heat.pdf physics
TOPIC 8 Temperature and Heat.pdf physicsTOPIC 8 Temperature and Heat.pdf physics
TOPIC 8 Temperature and Heat.pdf physicsssuserddc89b
Ā 
Call Girls in Munirka Delhi šŸ’ÆCall Us šŸ”8264348440šŸ”
Call Girls in Munirka Delhi šŸ’ÆCall Us šŸ”8264348440šŸ”Call Girls in Munirka Delhi šŸ’ÆCall Us šŸ”8264348440šŸ”
Call Girls in Munirka Delhi šŸ’ÆCall Us šŸ”8264348440šŸ”soniya singh
Ā 
Volatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -IVolatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -INandakishor Bhaurao Deshmukh
Ā 
Transposable elements in prokaryotes.ppt
Transposable elements in prokaryotes.pptTransposable elements in prokaryotes.ppt
Transposable elements in prokaryotes.pptArshadWarsi13
Ā 
User Guide: Pulsarā„¢ Weather Station (Columbia Weather Systems)
User Guide: Pulsarā„¢ Weather Station (Columbia Weather Systems)User Guide: Pulsarā„¢ Weather Station (Columbia Weather Systems)
User Guide: Pulsarā„¢ Weather Station (Columbia Weather Systems)Columbia Weather Systems
Ā 
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
Ā 
Analytical Profile of Coleus Forskohlii | Forskolin .pptx
Analytical Profile of Coleus Forskohlii | Forskolin .pptxAnalytical Profile of Coleus Forskohlii | Forskolin .pptx
Analytical Profile of Coleus Forskohlii | Forskolin .pptxSwapnil Therkar
Ā 
GenBio2 - Lesson 1 - Introduction to Genetics.pptx
GenBio2 - Lesson 1 - Introduction to Genetics.pptxGenBio2 - Lesson 1 - Introduction to Genetics.pptx
GenBio2 - Lesson 1 - Introduction to Genetics.pptxBerniceCayabyab1
Ā 
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
Ā 
Pests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdfPests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdfPirithiRaju
Ā 
User Guide: Orionā„¢ Weather Station (Columbia Weather Systems)
User Guide: Orionā„¢ Weather Station (Columbia Weather Systems)User Guide: Orionā„¢ Weather Station (Columbia Weather Systems)
User Guide: Orionā„¢ Weather Station (Columbia Weather Systems)Columbia Weather Systems
Ā 
Citronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyayCitronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyayupadhyaymani499
Ā 
Vision and reflection on Mining Software Repositories research in 2024
Vision and reflection on Mining Software Repositories research in 2024Vision and reflection on Mining Software Repositories research in 2024
Vision and reflection on Mining Software Repositories research in 2024AyushiRastogi48
Ā 
OECD bibliometric indicators: Selected highlights, April 2024
OECD bibliometric indicators: Selected highlights, April 2024OECD bibliometric indicators: Selected highlights, April 2024
OECD bibliometric indicators: Selected highlights, April 2024innovationoecd
Ā 
Microteaching on terms used in filtration .Pharmaceutical Engineering
Microteaching on terms used in filtration .Pharmaceutical EngineeringMicroteaching on terms used in filtration .Pharmaceutical Engineering
Microteaching on terms used in filtration .Pharmaceutical EngineeringPrajakta Shinde
Ā 
Speech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxSpeech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxpriyankatabhane
Ā 
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
Ā 
Pests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdfPests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdfPirithiRaju
Ā 

Recently uploaded (20)

Pests of safflower_Binomics_Identification_Dr.UPR.pdf
Pests of safflower_Binomics_Identification_Dr.UPR.pdfPests of safflower_Binomics_Identification_Dr.UPR.pdf
Pests of safflower_Binomics_Identification_Dr.UPR.pdf
Ā 
The dark energy paradox leads to a new structure of spacetime.pptx
The dark energy paradox leads to a new structure of spacetime.pptxThe dark energy paradox leads to a new structure of spacetime.pptx
The dark energy paradox leads to a new structure of spacetime.pptx
Ā 
TOPIC 8 Temperature and Heat.pdf physics
TOPIC 8 Temperature and Heat.pdf physicsTOPIC 8 Temperature and Heat.pdf physics
TOPIC 8 Temperature and Heat.pdf physics
Ā 
Call Girls in Munirka Delhi šŸ’ÆCall Us šŸ”8264348440šŸ”
Call Girls in Munirka Delhi šŸ’ÆCall Us šŸ”8264348440šŸ”Call Girls in Munirka Delhi šŸ’ÆCall Us šŸ”8264348440šŸ”
Call Girls in Munirka Delhi šŸ’ÆCall Us šŸ”8264348440šŸ”
Ā 
Volatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -IVolatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -I
Ā 
Transposable elements in prokaryotes.ppt
Transposable elements in prokaryotes.pptTransposable elements in prokaryotes.ppt
Transposable elements in prokaryotes.ppt
Ā 
User Guide: Pulsarā„¢ Weather Station (Columbia Weather Systems)
User Guide: Pulsarā„¢ Weather Station (Columbia Weather Systems)User Guide: Pulsarā„¢ Weather Station (Columbia Weather Systems)
User Guide: Pulsarā„¢ Weather Station (Columbia Weather Systems)
Ā 
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
Ā 
Analytical Profile of Coleus Forskohlii | Forskolin .pptx
Analytical Profile of Coleus Forskohlii | Forskolin .pptxAnalytical Profile of Coleus Forskohlii | Forskolin .pptx
Analytical Profile of Coleus Forskohlii | Forskolin .pptx
Ā 
GenBio2 - Lesson 1 - Introduction to Genetics.pptx
GenBio2 - Lesson 1 - Introduction to Genetics.pptxGenBio2 - Lesson 1 - Introduction to Genetics.pptx
GenBio2 - Lesson 1 - Introduction to Genetics.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...
Ā 
Pests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdfPests of Bengal gram_Identification_Dr.UPR.pdf
Pests of Bengal gram_Identification_Dr.UPR.pdf
Ā 
User Guide: Orionā„¢ Weather Station (Columbia Weather Systems)
User Guide: Orionā„¢ Weather Station (Columbia Weather Systems)User Guide: Orionā„¢ Weather Station (Columbia Weather Systems)
User Guide: Orionā„¢ Weather Station (Columbia Weather Systems)
Ā 
Citronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyayCitronella presentation SlideShare mani upadhyay
Citronella presentation SlideShare mani upadhyay
Ā 
Vision and reflection on Mining Software Repositories research in 2024
Vision and reflection on Mining Software Repositories research in 2024Vision and reflection on Mining Software Repositories research in 2024
Vision and reflection on Mining Software Repositories research in 2024
Ā 
OECD bibliometric indicators: Selected highlights, April 2024
OECD bibliometric indicators: Selected highlights, April 2024OECD bibliometric indicators: Selected highlights, April 2024
OECD bibliometric indicators: Selected highlights, April 2024
Ā 
Microteaching on terms used in filtration .Pharmaceutical Engineering
Microteaching on terms used in filtration .Pharmaceutical EngineeringMicroteaching on terms used in filtration .Pharmaceutical Engineering
Microteaching on terms used in filtration .Pharmaceutical Engineering
Ā 
Speech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxSpeech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptx
Ā 
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
Ā 
Pests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdfPests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdf
Ā 

Micro-intelligence for the IoT: Teaching the Old Logic Dog New Programming Tricks

  • 1. Micro-intelligence for the IoT Teaching the Old Logic Dog New Programming Tricks Andrea Omicini andrea.omicini@unibo.it Dipartimento di Informatica ā€“ Scienza e Ingegneria (DISI), Universit`a di Bologna Invited Talk @ 18th Workshop ā€œFrom Objects to Agentsā€ (WOA 2017) Scilla, RC, Italy, 16 June 2017 Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 1 / 62
  • 2. Summary Abstract New application scenarios for pervasive intelligent systems open novel perspectives for logic-based approaches, in particular when coupled with agent-based technologies and methods. In this explorative talk we provide some examples of how logic programming and its extensions can work as sources of micro-intelligence for the IoT, at both the individual and the collective level, along with an overall architectural view of IoT systems exploiting logic-based technologies. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 2 / 62
  • 3. Outline 1 Trends New Scenarios New Technologies New Requirements 2 The Logic Programming Road to Micro-intelligence Faux Pas Steps in the Right Directions LP for the IoIT 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 3 / 62
  • 4. Trends Next in Line. . . 1 Trends 2 The Logic Programming Road to Micro-intelligence 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 4 / 62
  • 5. Trends New Scenarios Focus on. . . 1 Trends New Scenarios New Technologies New Requirements 2 The Logic Programming Road to Micro-intelligence Faux Pas Steps in the Right Directions LP for the IoIT 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 5 / 62
  • 6. Trends New Scenarios Knowledge-Intensive Environments (KIE) Information galore ubiquitous knowledge sources growing in number and size knowledge prosumers in socio-technical systems (STS) [Whitworth, 2006] application goals more and more depending on information available in the environment [Mariani and Omicini, 2013] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 6 / 62
  • 7. Trends New Scenarios Pervasive Intelligence Intelligence everywhere computation is everywhere around us software components are required to behave intelligently, understanding their own goals and the context where they have to work integration of software components is supposed to add social intelligence, possibly through coordination [Castelfranchi, 1998] pervasive computing nowadays calls for ubiquitous intelligence Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 7 / 62
  • 8. Trends New Scenarios Internet of Intelligent Things (IoIT) Intelligent objects in the IoT our everyday physical objects should be able to network in the Internet of Things (IoT) [Gubbi et al., 2013, Atzori et al., 2010, Fortino et al., 2014] they are required to understand each other, to learn, to understand situations, to understand us [Lippi et al., 2017] our everyday object should be(come) intelligent in the Internet of Intelligent Things (IoIT) [ArsĀ“enio et al., 2014] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 8 / 62
  • 9. Trends New Technologies Focus on. . . 1 Trends New Scenarios New Technologies New Requirements 2 The Logic Programming Road to Micro-intelligence Faux Pas Steps in the Right Directions LP for the IoIT 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 9 / 62
  • 10. Trends New Technologies Agent-Oriented Computing Agents & multi-agent systems (MAS) agents are the most viable abstraction to encapsulate fundamental features such as control, goals, mobility, intelligence [Zambonelli and Omicini, 2004] MAS abstractions such as society and environment are essential to cope with the complexity of nowadays application scenarios [Omicini and Mariani, 2013] agent-oriented models and technologies are gaining momentum for embedding decentralised intelligence [Singh and Chopra, 2017] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 10 / 62
  • 11. Trends New Technologies Semantic Technologies Semantic Web to eļ¬€ectively share information between humans and software agents ontologies standard inter-agent communication languages [FIPA ACL, 2002] conversational technologies and systems [Nishida et al., 2014] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 11 / 62
  • 12. Trends New Technologies Everything as a Service (XaaS) in order to promote maximum availability and interoperability, any resource of any sort should be accessible as a service possibly, an intelligent one through standard network operations Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 12 / 62
  • 13. Trends New Technologies . . . and Many Others ubiquitous artiļ¬cial intelligence Big Data intelligente sensing . . . Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 13 / 62
  • 14. Trends New Requirements Focus on. . . 1 Trends New Scenarios New Technologies New Requirements 2 The Logic Programming Road to Micro-intelligence Faux Pas Steps in the Right Directions LP for the IoIT 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 14 / 62
  • 15. Trends New Requirements Observability observability is essential for understanding execution of distributed systems [Tanenbaum and van Steen, 2007]ā€”as in the case of stateless communication in REST mutual observation is a pre-condition for many forms of cognitive agent coordinationā€”e.g., behavioural implicit communication (BIC) [Castelfranchi et al., 2010] inspectability an essential feature for online engineering [Fredriksson and Gustavsson, 2004] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 15 / 62
  • 16. Trends New Requirements Malleability the ability of changing / adapting at run time is a pre-condition for most forms of self-adaptive / self-organising systems e.g. malleability of coordination artefacts allows for self-organisation patterns in MAS [Viroli et al., 2005] e.g. malleability of a Prolog engine allow for adaptive intelligent middleware [Piancastelli et al., 2008] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 16 / 62
  • 17. Trends New Requirements Understandability We need explanations it is not enough for systems to work we need to understand themā€”otherwise, it is not diļ¬€erent from magic e.g. decision support systems need not just to propose solutions, but also to motivate them e.g. the problem with deep learning e.g. engineering systems with self-organisation techniques mandates some for of system predictability Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 17 / 62
  • 18. Trends New Requirements Formalisability We need to be sure it is not enough for systems to work we need to know how they will behaveā€”otherwise, it could be dangerous, or, unacceptable, or, . . . e.g. we like to add features of self-organising systems to our systemsā€”but, we need to foresee their evolution over time, at least in general terms e.g. complex systems are generally unpredictable, however we would need at least partial predictability of their behaviour when we engineer them Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 18 / 62
  • 19. Trends New Requirements Norm Compliance Systems & norms if computational systems are pervasive, and aļ¬€ect every aspects of our everyday life, they are subject of all the norms ruling human individual and social behaviour norm compliance should be enforced by computational systems, starting from the earliest phases of software engineering normative reasoning should become part of the intelligent behaviour of components and systems accountability, traceability, and responsibility should be part of each component and every system Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 19 / 62
  • 20. Trends New Requirements Widespread Intelligence Component- & system level every single component is expected to behave and interact intelligently every group of interacting components ā€“ e.g., agent societies ā€“ should integrate so as to produce intelligent collective behaviours overall system behaviourā€”ok, intelligent ! of course, the diverse levels are connected, but do not imply each other Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 20 / 62
  • 21. The Logic Programming Road to Micro-intelligence Next in Line. . . 1 Trends 2 The Logic Programming Road to Micro-intelligence 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 21 / 62
  • 22. The Logic Programming Road to Micro-intelligence Faux Pas Focus on. . . 1 Trends New Scenarios New Technologies New Requirements 2 The Logic Programming Road to Micro-intelligence Faux Pas Steps in the Right Directions LP for the IoIT 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 22 / 62
  • 23. The Logic Programming Road to Micro-intelligence Faux Pas Why Logic Programming for Intelligent Systems? I General features of Logic Programming (LP) computation as deduction declarative and procedural interpretation match reasoning about what is true rather than about what to do logic theories as programs and knowledge bases programming with relations and inferences non-typed tree structures for uniform data representation uniļ¬cation as a non-directional mechanism for message passing single-assignment variables, step-by-step reļ¬nement reasoning with incomplete information non determinism interactive computational model . . . Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 23 / 62
  • 24. The Logic Programming Road to Micro-intelligence Faux Pas Why Logic Programming for Intelligent Systems? II Overall LP languages and technologies represent in principle the most natural candidates for injecting intelligence within computational systems Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 24 / 62
  • 25. The Logic Programming Road to Micro-intelligence Faux Pas Why Logic Programming for Distributed Systems? I Early days since the early days of logic programming, features like high-level languages non-determinism referential transparency made the potential for exploitation of parallelism in the execution of logic programs clearly emerge [Gupta et al., 2001] at the same time, the articulation of logic computation, with the frequent occurrence of heavy computational load non-trivial computational structures made the computational techniques developed for logic languages relevant for the general scenario of concurrent / parallel computation Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 25 / 62
  • 26. The Logic Programming Road to Micro-intelligence Faux Pas Why Logic Programming for Distributed Systems? II Or- & and-parallelism logic languages like Prolog allow for parallel evaluation the proof tree could be explored parallel / concurrently even more, the potential computational complexity of the proof tree actually encourages parallel exploration basically, Prolog supports two sorts of parallelism and-parallelism or-parallelism ļ¬tting distributed computing Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 26 / 62
  • 27. The Logic Programming Road to Micro-intelligence Faux Pas Logic Programming: Issues I Why did LP never really take oļ¬€? computational costs too high, machinery too huge not really suited for programming in the largeā€”intrinsic modularity (predicates) does not really scales up, modules are not enough a novel programming paradigm requires huge eļ¬€orts by programmers ā€œno typesā€ makes it diļ¬ƒcult (also) to deal with domain-speciļ¬c applications how to deal with non determinism? distance from mainstream programming paradigms potentially harms conceptual integrity troublesome integration with mainstream technologies . . . Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 27 / 62
  • 28. The Logic Programming Road to Micro-intelligence Faux Pas Logic Programming: Issues II LP for distributed systems? mostly, distributed computing for LPā€”to share the huge computational load distributed computing is not the same as distributed systems, at least according to their historical meaningsā€”per se, LP does not work for distributed systems interactive computational model works locallyā€”one user querying one engine the universal notion of consistency of logic theory does not cope well with the incompleteness and inconsistency intrinsically implied by the needs of distributed pervasive systems LP technology does not always integrate well with available tools and technologies for distributed pervasive systems Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 28 / 62
  • 29. The Logic Programming Road to Micro-intelligence Steps in the Right Directions Focus on. . . 1 Trends New Scenarios New Technologies New Requirements 2 The Logic Programming Road to Micro-intelligence Faux Pas Steps in the Right Directions LP for the IoIT 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 29 / 62
  • 30. The Logic Programming Road to Micro-intelligence Steps in the Right Directions Ubiquitous Declarative Languages and Technologies Declarative languages and technologies SQL and its derivatives are everywhere in databases and knowledge sources of any sort XML and its applications are the de facto standard for the Web as well as for most of the novel application scenarios at any level even the shift in object-oriented programming from classes to interfaces in some sense represents a shift towards declarativeness declarative models and technologies play an essential roles in agent-oriented computing [Omicini and Zambonelli, 2004] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 30 / 62
  • 31. The Logic Programming Road to Micro-intelligence Steps in the Right Directions New LP Technologies Essential features minimal and conļ¬gurable engines running without heavy computational costs [Denti et al., 2001] multi-platform technology, including resource-constrained devices [Denti et al., 2013] interoperability with widespread languages, technologies, and standards clean model integration for conceptual integrity [Denti et al., 2005] e.g. tuProlog http://tuprolog.unibo.it Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 31 / 62
  • 32. The Logic Programming Road to Micro-intelligence Steps in the Right Directions Distributing Logic Programs Concurrent logic processes processes represented by logic processes in concurrent systems logic agents in the acceptation of coordination models [Ciancarini, 1996] there, concurrent / distributed systems are ļ¬rst of all collection of logic engines running in a concurrent / distributed way [Robertson, 2004] e.g. Shared Prolog [Brogi and Ciancarini, 1991], ACLT [Denti et al., 1996] ā†’ moving LP towards distributed systems and MAS [Baldoni et al., 2010] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 32 / 62
  • 33. The Logic Programming Road to Micro-intelligence Steps in the Right Directions Logic-based Coordination Logic tuple spaces the space of interaction is built around logic tuple spaces [Ciancarini, 1994, Denti et al., 1996] allowing for heterogeneous distributed processes to be coordinated blackboards and programmable logic tuple spaces promote logic-based coordination of distributed systems e.g. Shared Prolog [Brogi and Ciancarini, 1991], ReSpecT [Omicini and Denti, 2001] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 33 / 62
  • 34. The Logic Programming Road to Micro-intelligence LP for the IoIT Focus on. . . 1 Trends New Scenarios New Technologies New Requirements 2 The Logic Programming Road to Micro-intelligence Faux Pas Steps in the Right Directions LP for the IoIT 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 34 / 62
  • 35. The Logic Programming Road to Micro-intelligence LP for the IoIT Micro-intelligence for the IoT IoT scenarios (and CPS as well) mandates for distributed & situated micro-intelligence huge numbers of small unit of computation situated within a spatially-distributed environment promoting the local exploitation of high-level symbolic languages with inferential capabilities ? what role could the LP models and technologies play in such scenarios? ? what LP for the IoIT? [ArsĀ“enio et al., 2014] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 35 / 62
  • 36. The Logic Programming Road to Micro-intelligence LP for the IoIT Distributing Intelligence through Logic Engines I Distributed logic engines lightweight and interoperable Prolog engines could be distributed even on resource-constrained devices [Denti et al., 2013] multiple logic theories are then scattered around, encapsulated in each engine, and associated to individual computational devices and things in the IoT each logic theory is situated, and represents what is true locally, according to a simple paraconsistent interpretation LP resolution process is local to each theory / engine, so it is both standard and consistent [Robinson, 1965] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 36 / 62
  • 37. The Logic Programming Road to Micro-intelligence LP for the IoIT Distributing Intelligence through Logic Engines II Our example: tuProlog tuProlog http://tuprolog.unibo.it is a light-weight Prolog system for distributed applications and infrastructures [Denti et al., 2001] is intentionally designed around a minimal core can be either statically or dynamically conļ¬gured by loading/unloading libraries of predicates natively supports multi-paradigm programming [Denti et al., 2005], providing a clean, seamless integration model between Prolog and mainstream object-oriented languages runs on most known platforms and devices Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 37 / 62
  • 38. The Logic Programming Road to Micro-intelligence LP for the IoIT Dealing with Situatedness & Domain-speciļ¬c Scenarios I pervasive applications typically demands for domain-speciļ¬c approaches multiple, heterogeneous devices in the IoT usually have speciļ¬c application goals and manage speciļ¬c sorts of information situatedness require reactivity to environment change ! LP is general enough to deal with whatever, but never speciļ¬c enough to do it well many speciļ¬c logics exist to deal with many diverse application scenariosā€”e.g., S4 modal logic for spatial computing LP can be extended to capture diļ¬€erent logic and domains Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 38 / 62
  • 39. The Logic Programming Road to Micro-intelligence LP for the IoIT Dealing with Situatedness & Domain-speciļ¬c Scenarios II Our example: Labelled Variables in Logic Programming In Labelled Variables in Logic Programming (LVLP) [Calegari et al., 2016a] logic variable can be associated to a label labels are domain-speciļ¬c each logic engine can be conļ¬gured with its own set of domain-speciļ¬c label, along with the speciļ¬c functions to interfere with the logic resolution process, without losing declarativeness labels allows for a customisable computational model (domain-speciļ¬c labelled system) bound to the standard LP computation e.g. a wardrobe could host a LVLP engine whose labelled system represent its content, and helps in dress selection [Calegari et al., 2016a] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 39 / 62
  • 40. The Logic Programming Road to Micro-intelligence LP for the IoIT Making LP Available in Distributed Systems I LP promotes interactive programming, even though one user / one engine sort in order to meet the needs of nowadays distributed systems, a more standard approach should be adopted, in terms of both architecture and technology possibly subsuming standard LP interaction e.g. providing logic engines (theories, inference, resolution) as a service, so that standard distributed components and applications could exploit them Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 40 / 62
  • 41. The Logic Programming Road to Micro-intelligence LP for the IoIT Making LP Available in Distributed Systems II Our example: Logic Programming as a Service Logic Programming as a Service (LPaaS) [Calegari et al., 2016b] provides an abstract view of an LP inference engine in terms of service promotes interoperability, encapsulation, and situatedness, as well as context-awareness each logic engine exposes its services concurrently to multiple clients, via two interfaces (client and conļ¬gurator) preserving the standard resolution process providing for both stateless and stateful client-server interaction promoting time-sensitive and space-sensitive computation Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 41 / 62
  • 42. The Logic Programming Road to Micro-intelligence LP for the IoIT Logic-based Coordination Artefacts I Coordination artefacts encapsulate coordination policies for distributed systems can inject social intelligence within computational systems [Castelfranchi, 1998] can be observable and malleable [Omicini et al., 2008] Logic-based coordination artefacts represent coordination policies declaratively pave the way towards (partial) formalisation of complex systems Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 42 / 62
  • 43. The Logic Programming Road to Micro-intelligence LP for the IoIT Logic-based Coordination Artefacts II Our example: ReSpecT coordination artefacts ReSpecT coordination artefacts (LPaaS) [Omicini, 2007] are inspectable and malleable can express any Turing-computable coordination policy [Denti et al., 1998] there, both communication and coordination theories are ļ¬rst-order logic theories can be used within the TuCSoN middleware for MAS coordination [Omicini and Zambonelli, 1999] Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 43 / 62
  • 44. The Logic Programming Road to Micro-intelligence LP for the IoIT Logic-based Middleware I Distributed logic agents and logic engines Overall distributing logic engines conļ¬guring them as services allowing logic-based agents to roam around making agents interact with each other and exploiting logic services coordinating logic agents and engines / services suggest that a LP-based middleware would be of some help for the engineering of intelligent pervasive and IoT applications Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 44 / 62
  • 45. The Logic Programming Road to Micro-intelligence LP for the IoIT Logic-based Middleware II Our example: work in progress Thesis by Alberto Sita, in cooperation with Roberta Calegari, Enrico Denti, Stefano Mariani Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 45 / 62
  • 46. The Logic Programming Road to Micro-intelligence LP for the IoIT Overall View I LP for the IoIT distributed logic engines for widespread micro-intelligence exploited as standard services by components of any sorts, including intelligent agents situated and domain-speciļ¬c extensions to meet the demand of IoT coordinated via logic-based artefacts, encapsulating social intelligence based on a logic-based middleware Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 46 / 62
  • 47. The Logic Programming Road to Micro-intelligence LP for the IoIT Overall View II Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 47 / 62
  • 48. Further Work & Conclusion Next in Line. . . 1 Trends 2 The Logic Programming Road to Micro-intelligence 3 Further Work & Conclusion Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 48 / 62
  • 49. Further Work & Conclusion Further Work porting tuProlog on most popular resource-constraint devices full implementation of LPaaS in tuProlog full-ļ¬‚edged logic-based middleware architecture and technology testing in real-world applications general formalisation of the framework Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 49 / 62
  • 50. Further Work & Conclusion Conclusion Micro-intelligence for the IoIT the requirements of pervasive and IoIT systems include widespread intelligence LP-based languages and technologies have the potential to work as the sources of micro-intelligence encapsulated within devices of any sort, and to make them work together in groups, aggregates, societies by promoting observability, malleability, understandability, formalisability, and norm compliance ! provided that LP legacy works as a rich platform for future developments rather than a huge burden Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 50 / 62
  • 51. References References I ArsĀ“enio, A., Serra, H., Francisco, R., Nabais, F., Andrade, J., and Serrano, E. (2014). Internet of Intelligent Things: Bringing artiļ¬cial intelligence into things and communication networks. In Inter-cooperative Collective Intelligence: Techniques and Applications, volume 495 of Studies in Computational Intelligence, pages 1ā€“37. Springer Berlin Heidelberg. Atzori, L., Iera, A., and Morabito, G. (2010). The Internet of Things: A survey. Computer Networks, 54(15):2787ā€“2805. Baldoni, M., Baroglio, C., Mascardi, V., Omicini, A., and Torroni, P. (2010). Agents, Multi-Agent Systems and Declarative Programming: Who, What, When, Where, Why, How? In Dovier, A. and Pontelli, E., editors, A 25 Year Perspective on Logic Programming. Achievements of the Italian Association for Logic Programming, GULP, LNAI: State-of-the-Art Survey, chapter 10, pages 200ā€“225. Springer. Brogi, A. and Ciancarini, P. (1991). The concurrent language, Shared Prolog. ACM Transactions on Programming Languages and Systems, 13(1):99ā€“123. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 51 / 62
  • 52. References References II Calegari, R., Denti, E., Dovier, A., and Omicini, A. (2016a). Labelled variables in logic programming: Foundations. In Fiorentini, C. and Momigliano, A., editors, CILC 2016 ā€“ Italian Conference on Computational Logic, volume 1645 of CEUR Workshop Proceedings, pages 5ā€“20, Milano, Italy. CEUR-WS. Proceedings of the 31st Italian Conference on Computational Logic. Calegari, R., Denti, E., Mariani, S., and Omicini, A. (2016b). Towards logic programming as a service: Experiments in tuProlog. In Santoro, C., Messina, F., and De Benedetti, M., editors, WOA 2016 ā€“ 17th Workshop ā€œFrom Objects to Agentsā€, volume 1664 of CEUR Workshop Proceedings, pages 91ā€“99. Sun SITE Central Europe, RWTH Aachen University. Proceedings of the 17th Workshop ā€œFrom Objects to Agentsā€ co-located with 18th European Agent Systems Summer School (EASSS 2016). Castelfranchi, C. (1998). Modelling social action for AI agents. Artiļ¬cial Intelligence, 103(1-2):157ā€“182. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 52 / 62
  • 53. References References III Castelfranchi, C., Pezzullo, G., and Tummolini, L. (2010). Behavioral implicit communication (BIC): Communicating with smart environments via our practical behavior and its traces. International Journal of Ambient Computing and Intelligence, 2(1):1ā€“12. Ciancarini, P. (1994). Distributed programming with logic tuple spaces. New Generation Computing, 12(3):251ā€“283. Ciancarini, P. (1996). Coordination models and languages as software integrators. ACM Computing Surveys, 28(2):300ā€“302. Denti, E., Natali, A., and Omicini, A. (1998). On the expressive power of a language for programming coordination media. In 1998 ACM Symposium on Applied Computing (SACā€™98), pages 169ā€“177, Atlanta, GA, USA. ACM. Special Track on Coordination Models, Languages and Applications. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 53 / 62
  • 54. References References IV Denti, E., Natali, A., Omicini, A., and Venuti, M. (1996). Logic tuple spaces for the coordination of heterogeneous agents. In Baader, F. and Schulz, K. U., editors, Frontiers of Combining Systems, volume 3 of Applied Logic Series, pages 147ā€“160, Munich, Germany. Kluwer Academic Publishers. Denti, E., Omicini, A., and Calegari, R. (2013). tuProlog: Making Prolog ubiquitous. ALP Newsletter. Denti, E., Omicini, A., and Ricci, A. (2001). tuProlog: A light-weight Prolog for Internet applications and infrastructures. In Ramakrishnan, I., editor, Practical Aspects of Declarative Languages, volume 1990 of LNCS, pages 184ā€“198. Springer. 3rd International Symposium (PADL 2001), Las Vegas, NV, USA, 11ā€“12 March 2001. Proceedings. Denti, E., Omicini, A., and Ricci, A. (2005). Multi-paradigm Java-Prolog integration in tuProlog. Science of Computer Programming, 57(2):217ā€“250. FIPA ACL (2002). Agent Communication Language Speciļ¬cations. Foundation for Intelligent Physical Agents (FIPA). Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 54 / 62
  • 55. References References V Fortino, G., Guerrieri, A., Russo, W., and Savaglio, C. (2014). Integration of agent-based and Cloud Computing for the smart objects-oriented IoT. In 2014 IEEE 18th International Conference on Computer Supported Cooperative Work in Design (CSCWD), pages 493ā€“498. Fredriksson, M. and Gustavsson, R. (2004). Online engineering and open computational systems. In Bergenti, F., Gleizes, M.-P., and Zambonelli, F., editors, Methodologies and Software Engineering for Agent Systems: The Agent-Oriented Software Engineering Handbook, volume 11 of Multiagent Systems, Artiļ¬cial Societies, and Simulated Organization, pages 377ā€“388. Kluwer Academic Publishers. Gubbi, J., Buyya, R., Marusic, S., and Palaniswami, M. (2013). Internet of Things (IoT): A vision, architectural elements, and future directions. Future Generation Computer Systems, 29(7):1645ā€“1660. Gupta, G., Pontelli, E., Ali, K. A., Carlsson, M., and Hermenegildo, M. V. (2001). Parallel execution of Prolog programs: a survey. ACM Transactions on Programming Languages and Systems, 23(4):472ā€“602. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 55 / 62
  • 56. References References VI Lippi, M., Mamei, M., Mariani, S., and Zambonelli, F. (2017). Coordinating distributed speaking objects. In 37th IEEE International Conference on Distributed Computing Systems (ICDCS 2017). IEEE Computer Society. Mariani, S. and Omicini, A. (2013). Molecules of Knowledge: Self-organisation in knowledge-intensive environments. In Fortino, G., BĖ˜adicĖ˜a, C., Malgeri, M., and Unland, R., editors, Intelligent Distributed Computing VI, volume 446 of Studies in Computational Intelligence, pages 17ā€“22. Springer. 6th International Symposium on Intelligent Distributed Computing (IDC 2012), Calabria, Italy, 24-26 September 2012. Proceedings. Nishida, T., Nakazawa, A., Ohmoto, Y., and Mohammad, Y. (2014). Conversational Informatics. A Data-Intensive Approach with Emphasis on Nonverbal Communication. Springer Japan, Tokyo. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 56 / 62
  • 57. References References VII Omicini, A. (2007). Formal ReSpecT in the A&A perspective. Electronic Notes in Theoretical Computer Science, 175(2):97ā€“117. 5th International Workshop on Foundations of Coordination Languages and Software Architectures (FOCLASAā€™06), CONCURā€™06, Bonn, Germany, 31 August 2006. Post-proceedings. Omicini, A. and Denti, E. (2001). From tuple spaces to tuple centres. Science of Computer Programming, 41(3):277ā€“294. Omicini, A. and Mariani, S. (2013). Agents & multiagent systems: En route towards complex intelligent systems. Intelligenza Artiļ¬ciale, 7(2):153ā€”164. Special Issue Celebrating 25 years of the Italian Association for Artiļ¬cial Intelligence. Omicini, A., Ricci, A., and Viroli, M. (2008). Artifacts in the A&A meta-model for multi-agent systems. Autonomous Agents and Multi-Agent Systems, 17(3):432ā€“456. Special Issue on Foundations, Advanced Topics and Industrial Perspectives of Multi-Agent Systems. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 57 / 62
  • 58. References References VIII Omicini, A. and Zambonelli, F. (1999). Coordination for Internet application development. Autonomous Agents and Multi-Agent Systems, 2(3):251ā€“269. Special Issue: Coordination Mechanisms for Web Agents. Omicini, A. and Zambonelli, F. (2004). MAS as complex systems: A view on the role of declarative approaches. In Leite, J. A., Omicini, A., Sterling, L., and Torroni, P., editors, Declarative Agent Languages and Technologies, volume 2990 of LNCS, pages 1ā€“17. Springer. 1st International Workshop (DALT 2003), Melbourne, Australia, 15 July 2003. Revised Selected and Invited Papers. Piancastelli, G., Benini, A., Omicini, A., and Ricci, A. (2008). The architecture and design of a malleable object-oriented Prolog engine. In Wainwright, R. L., Haddad, H. M., Menezes, R., and Viroli, M., editors, 23rd ACM Symposium on Applied Computing (SAC 2008), volume 1, pages 191ā€“197, Fortaleza, CearĀ“a, Brazil. ACM. Special Track on Programming Languages. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 58 / 62
  • 59. References References IX Robertson, D. (2004). Multi-agent coordination as Distributed Logic Programming. In Demoen, B. and Lifschitz, V., editors, Logic Programming. 20th International Conference, ICLP 2004, Saint-Malo, France, September 6-10, 2004. Proceedings, volume 3132, pages 416ā€“430. Springer. Robinson, J. A. (1965). A machine-oriented logic based on the resolution principle. Journal of the ACM, 12(1):23ā€“41. Singh, M. P. and Chopra, A. K. (2017). The Internet of Things and multiagent systems: Decentralized intelligence in distributed computing. In 37th IEEE International Conference on Distributed Computing Systems (ICDCS 2017). IEEE Computer Society. Tanenbaum, A. S. and van Steen, M. (2007). Distributed Systems. Principles and Paradigms. Pearson Prentice Hall, Upper Saddle River, NJ, USA, 2nd edition. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 59 / 62
  • 60. References References X Viroli, M., Omicini, A., and Ricci, A. (2005). Engineering MAS environment with artifacts. In Weyns, D., Parunak, H. V. D., and Michel, F., editors, 2nd International Workshop ā€œEnvironments for Multi-Agent Systemsā€ (E4MAS 2005), pages 62ā€“77, AAMAS 2005, Utrecht, The Netherlands. Whitworth, B. (2006). Socio-technical systems. In Ghaou, C., editor, Encyclopedia of Human Computer Interaction, pages 533ā€“541. IGI Global. Zambonelli, F. and Omicini, A. (2004). Challenges and research directions in agent-oriented software engineering. Autonomous Agents and Multi-Agent Systems, 9(3):253ā€“283. Special Issue: Challenges for Agent-Based Computing. Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 60 / 62
  • 61. Extras URLs Slides On APICe ā†’ http://apice.unibo.it/xwiki/bin/view/Talks/MicrointelligenceWoa2017 On SlideShare ā†’ http://www.slideshare.net/andreaomicini/microintelligence-for-the-iot- teaching-the-old-logic-dog-new-programming-tricks Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 61 / 62
  • 62. Micro-intelligence for the IoT Teaching the Old Logic Dog New Programming Tricks Andrea Omicini andrea.omicini@unibo.it Dipartimento di Informatica ā€“ Scienza e Ingegneria (DISI), Universit`a di Bologna Invited Talk @ 18th Workshop ā€œFrom Objects to Agentsā€ (WOA 2017) Scilla, RC, Italy, 16 June 2017 Andrea Omicini (UniBo) LP: Micro-intelligence for the IoT WOA 2017 62 / 62