Smart-M3

Last updated

Smart-M3 is a name of an open-source software project that aims to provide a Semantic Web information sharing infrastructure between software entities and devices. It combines the ideas of distributed, networked systems and semantic web. The ultimate goal is to enable smart environments and linking of real and virtual worlds. [1] [2]

Contents

The key idea in Smart-M3 is that devices and software entities can publish their embedded information for other devices and software entities through simple, shared information brokers - a push-based information sharing model rather than specific publish-subscribe. The understandability of information is based on common ontology models common data formats. Another key idea is that Smart-M3 is device, domain, and vendor independent. It is free to use, open-source solution available in BSD license. So, Smart-M3 refers to a piece of software technology, several software products encoding this software technology, a computing platform that the software products make available, and any computing system that has been developed and deployed by using this computing platform.

The Smart-M3 software technology [3] is an evolving development of the Semantic Web with some specialized properties. [4] [5] The Smart-M3 software products are open-source software. They are available at SourceForge. [6] The Smart-M3 software products enable implementation of a Smart-M3 computing platform. The Smart-M3 computing platform allows to store and retrieve information based on tuple space mechanisms. Like in Linda (coordination language), a small defined set of semantically based interaction capabilities exists. A programmer can develop pieces of software that will make use of these interaction capabilities. A number of Smart-M3 software products are available that support such software development. Any such software must comply to the defined interface of the Smart-M3 computing platform, the defined communication protocol and the general design principles. A Smart-M3 system [7] is existing when such pieces of software have been built and deployed together with the Smart-M3 computing platform.

The Smart-M3 is being developed at Nokia Research Center within Artemis JU programme in Sofia (smart objects for intelligent applications) and in Finnish national DIEM (Device interoperability ecosystem) research projects. [8] [9]

Technology

Smart-M3 takes aim of the multi-vendor, multi-device and multi-part issue [10] [11] [12] (that's where the term M3 comes from). This M3 issue means that many kinds of devices shall interact with each other, for instance a mobile phone, a television set and a laptop. A device may be composed of parts that are considered as individual partners for interaction with another device. For instance, a user makes use of the keyboard of a desktop computer for typing input to a mobile phone. Further, the user shall be free in choosing the manufacturer. Any piece of software engaging this M3 issue must at least be able to work properly in an environment constrained by these issues. Moreover, the Smart-M3 technology allows to build pieces of software that are able to take advantage of the opportunities such an environment offers. [13] [14]

When humans make use of the Web, they produce and consume human readable information and exchange this information based on the paradigm of 'persistently publish and actually read'. A piece of software executing in a device used by humans may transform, render, analyze and index that human readable information, but this software will not understand the information. [15] Also the technology of the Smart-M3 approach does not make such human-human communication machine-understandable. Instead, Smart-M3 follows the principle of the Semantic Web that machine-understandable information has to be prepared explicitly for software reasoning. [16] However, instead of specifying explicitly the means of interaction between a piece of software producing data and sending it across the internet to a piece of software consuming that data, Smart-M3 follows exactly the human-human interaction paradigm of 'persistently publish and actually read' also when software interacts with software across the internet. [17]

While the notion of the Semantic Web embodies the vision of a single, universal web of machine-understandable information, Smart-M3 organizes the machine-machine communication by setting up in the Web many distinct spots of information exchange. At each spot a number of pieces of software executing in potentially many devices of potentially many kinds may publish and read information. This information has been prepared not only explicitly in machine readable form but also explicitly for each particular spot. Any particular spot of information exchange has a particular purpose or focus. All information that a particular spot of information exchange makes available will be dedicated to the particular purpose or focus of that spot. The number of pieces of software exchanging information at a particular spot is consequently limited to those that share this dedication.

At the core of the M3 issue is the issue of interoperability. The Smart-M3 approach deviates direct point-to-point interoperability because it applies the 'publish and read' mechanism at dedicated spots of information exchange in the Web. The publishing entity does not need to be interoperable with the reading entity. In fact the two even do not need to know about each other. Instead, Smart-M3 simply takes means that the publisher is able to publish at the selected spot of information exchange and the reader is able to read there.

System decomposition

Figure 1 shows a top view of a single system based on the software technology of the Smart-M3 approach. At the heart of the system is the corpus-M3 which decomposes further into a semantic information broker (SIB) and the real physical storage of data. Of course, this corpus-M3 must be hosted by a device. A number of devices hosts many M3-agents, including optionally the device already hosting the corpus-M3.

Figure 1: System decomposition Smart-M3 system top decomposition.png
Figure 1: System decomposition

The SIB is the access point for receiving information to be stored or retrieving such stored information. In the data storage all this information is stored as a graph that conforms to the rules of the Resource Description Framework (RDF).

A M3-agent is a piece of software that has been produced and deployed for the purpose of communicating with a SIB and publishing or reading information there. A particular M3-agent is in range of a particular SIB if this M3-agent physically is able to communicate with this SIB by using one of the potentially many communication means this SIB is capable of and this M3-agent has been produced and deployed explicitly for publishing or reading information at this SIB. A particular M3-agent is associated with a particular SIB if this M3-agent is in range of this particular SIB and this M3-agent has been accepted by this SIB for publishing or reading information due to a positive result of some negotiation performed when this M3-agent made the initial communication attempt.

Various domains and application areas involve devices of many kinds and these devices may have different communication capabilities. To achieve interoperability in such an heterogeneous situation, the SIB supports multiple transport mechanisms, such as TCP/IP, HTTP, Bluetooth and NoTA. [18] Depending on the actual operating environment the most suitable transport technology is selected.

Notion of application

Applications are not constructed in the monolithic manner but rather from collaborating - through information sharing - sets of agents (M3-agents). Said set of agents depends upon the particular situation and context that the user is either experiencing or requires at that time. Agents may by provide a monolithic style user-interface but this is purely a user-interface and not functionality concept. The programming model is analogous to that of the actor model. [19]

The Smart-M3 approach envisions computing beyond the traditional monolithic application program. [20] Instead, scenarios are considered in which a set of M3-agents executing in various devices mash-up the information that these M3-agents store and retrieve in/from a particular SIB. This collaboration of M3-agents forms the application. Which collaboration and mash-up of information occurs depends on the data available and is not even known a priori. [21]

Based on the data available within a space, a Smart-M3 system allows maintenance of an up-to-date digital representation of an environment covered by a set of devices executing M3-agents. If any information about the surrounding environment is easily available, an unlimited number of mash-up scenarios can be imagined that benefit from this information. [22]

Development of technology and software products

The anonymous agent coordination technology for knowledge processors in smart spaces has been proposed and documented. [23]

Three examples of the application of this technology have been demonstrated in so called smart home environments, [24] in the environment of smart room” [25] and in social networking situations. [26]

Smart-M3 in Academia

Open SMART-M3 training at 8th FRUCT conference at Lappeenranta, Finland 2010 Open SMART-M3 training 8th FRUCT conference 2010 bw.jpg
Open SMART-M3 training at 8th FRUCT conference at Lappeenranta, Finland 2010

The technology is among key focus areas of Finnish-Russian University Cooperation in Telecommunication (FRUCT).

There is an intensive R&D work in mobile software and services laboratory (MSSLab) in Saint Petersburg State University of Aerospace Instrumentation (Saint Petersburg, Russia) regarding the technology and concept in common. Main research topics are information search and access control in distributed smart spaces. PhD thesis work and several master's degree works are in progress. Development activities include CoffeeBreak Assistant application, which intended to provide information support, communication and expert-finding services during conferences and other events. [27]

The project SmartSlog [28] in the wireless and mobile technology laboratory of Petrozavodsk State University [29] (Petrozavodsk, Russia) develops an ANSI C ontology library generator. It maps a Web Ontology Language (OWL) description to ANSI C code (ontology library). The library provides API for programming M3-agents in high-level terms of ontology entities instead of low-level triplet-based terms. The ontology library is between an agent application and a low-level (mediator) library. Currently, SmartSlog employs the KPI_low interface [30] (oriented to small embedded devices) for triplet-based communications with SIB.

The project SmartConference [31] is an intelligent system for automation of processes during conference. It provides conference participants possibilities to control their presentations using their mobile devices, automated scheduling system and other useful services.

The project SmartScribo [32] in the wireless and mobile technology laboratory of Petrozavodsk State University [29] (Petrozavodsk, Russia) develops an ANSI C, C#, Python mobile distributed system for multiblogging.

Related Research Articles

The Semantic Web, sometimes known as Web 3.0, is an extension of the World Wide Web through standards set by the World Wide Web Consortium (W3C). The goal of the Semantic Web is to make Internet data machine-readable.

In computer science and information science, an ontology encompasses a representation, formal naming, and definition of the categories, properties, and relations between the concepts, data, and entities that substantiate one, many, or all domains of discourse. More simply, an ontology is a way of showing the properties of a subject area and how they are related, by defining a set of concepts and categories that represent the subject.

Mobile computing Human–computer interaction in which a computer is expected to be transported during normal usage

Mobile computing is human–computer interaction in which a computer is expected to be transported during normal usage, which allows for the transmission of data, voice, and video. Mobile computing involves mobile communication, mobile hardware, and mobile software. Communication issues include ad hoc networks and infrastructure networks as well as communication properties, protocols, data formats, and concrete technologies. Hardware includes mobile devices or device components. Mobile software deals with the characteristics and requirements of mobile applications.

OMA SpecWorks, previously the Open Mobile Alliance (OMA) is a standards organization which develops open, international technical standards for the mobile phone industry. It is a nonprofit Non-governmental organization (NGO), not a formal government-sponsored standards organization as is the International Telecommunication Union (ITU): a forum for industry stakeholders to agree on common specifications for products and services.

The concept of the "sensor web" is a type of sensor network that is especially well suited for environmental monitoring. The phrase the "sensor web" is also associated with a sensing system which heavily utilizes the World Wide Web. OGC's Sensor Web Enablement (SWE) framework defines a suite of web service interfaces and communication protocols abstracting from the heterogeneity of sensor (network) communication.

Ambient intelligence

In computing, ambient intelligence (AmI) refers to electronic environments that are sensitive and responsive to the presence of people. Ambient intelligence was a projection on the future of consumer electronics, telecommunications and computing that was originally developed in the late 1990s by Eli Zelkha and his team at Palo Alto Ventures for the time frame 2010–2020. Ambient intelligence would allow devices to work in concert to support people in carrying out their everyday life activities, tasks and rituals in an intuitive way using information and intelligence that is hidden in the network connecting these devices. As these devices grew smaller, more connected and more integrated into our environment, the technological framework behind them would disappear into our surroundings until only the user interface remains perceivable by users.

In information science, an upper ontology is an ontology which consists of very general terms that are common across all domains. An important function of an upper ontology is to support broad semantic interoperability among a large number of domain-specific ontologies by providing a common starting point for the formulation of definitions. Terms in the domain ontology are ranked under the terms in the upper ontology, e.g., the upper ontology classes are superclasses or supersets of all the classes in the domain ontologies.

Smart environments link computers and other smart devices to everyday settings and tasks. Smart environments include smart homes, smart cities and smart manufacturing.

Semantic technology

The ultimate goal of semantic technology is to help machines understand data. To enable the encoding of semantics with the data, well-known technologies are RDF and OWL. These technologies formally represent the meaning involved in information. For example, ontology can describe concepts, relationships between things, and categories of things. These embedded semantics with the data offer significant advantages such as reasoning over data and dealing with heterogeneous data sources.

Semantic interoperability is the ability of computer systems to exchange data with unambiguous, shared meaning. Semantic interoperability is a requirement to enable machine computable logic, inferencing, knowledge discovery, and data federation between information systems.

Context-aware computing refers to a general class of mobile systems that can sense their physical environment, and adapt their behavior accordingly.

The Internet of things (IoT) describes physical objects with sensors, processing ability, software, and other technologies that connect and exchange data with other devices and systems over the Internet or other communications networks. Internet of things has been considered a misnomer because devices do not need to be connected to the public internet, they only need to be connected to a network and be individually addressable.

Amit Sheth is a computer scientist at University of South Carolina in Columbia, South Carolina. He is the founding Director of the Artificial Intelligence Institute, and a Professor of Computer Science and Engineering. From 2007 to June 2019, he was the Lexis Nexis Ohio Eminent Scholar, director of the Ohio Center of Excellence in Knowledge-enabled Computing, and a Professor of Computer Science at Wright State University. Sheth's work has been cited by over 48,800 publications. He has an h-index of 106, which puts him among the top 100 computer scientists with the highest h-index. Prior to founding the Kno.e.sis Center, he served as the director of the Large Scale Distributed Information Systems Lab at the University of Georgia in Athens, Georgia.

Natural-language programming (NLP) is an ontology-assisted way of programming in terms of natural-language sentences, e.g. English. A structured document with Content, sections and subsections for explanations of sentences forms a NLP document, which is actually a computer program. Natural language programming is not to be mixed up with natural language interfacing or voice control where a program is first written and then communicated with through natural language using an interface added on. In NLP the functionality of a program is organised only for the definition of the meaning of sentences. For instance, NLP can be used to represent all the knowledge of an autonomous robot. Having done so, it's tasks can be scripted by its users so that the robot can execute them autonomously while keeping to prescribed rules of behaviour as determined by the robot's user. Such robots are called transparent robots as their reasoning is transparent to users and this develops trust in robots. Natural language use and natural-language user interfaces include Inform 7, a natural programming language for making interactive fiction, Shakespeare, an esoteric natural programming language in the style of the plays of William Shakespeare, and Wolfram Alpha, a computational knowledge engine, using natural-language input. Some methods for program synthesis are based on natural-language programming.

Ontology engineering Field which studies the methods and methodologies for building ontologies

In computer science, information science and systems engineering, ontology engineering is a field which studies the methods and methodologies for building ontologies, which encompasses a representation, formal naming and definition of the categories, properties and relations between the concepts, data and entities. In a broader sense, this field also includes a knowledge construction of the domain using formal ontology representations such as OWL/RDF. A large-scale representation of abstract concepts such as actions, time, physical objects and beliefs would be an example of ontological engineering. Ontology engineering is one of the areas of applied ontology, and can be seen as an application of philosophical ontology. Core ideas and objectives of ontology engineering are also central in conceptual modeling.

Semantic matching is a technique used in computer science to identify information which is semantically related.

Web of Things (WoT) describes a set of standards by the World Wide Web Consortium (W3C) for the interoperability of different Internet of things (IoT) platforms and application domains.

The Semantic Sensor Web (SSW) is a marriage of sensor and Semantic Web technologies. The encoding of sensor descriptions and sensor observation data with Semantic Web languages enables more expressive representation, advanced access, and formal analysis of sensor resources. The SSW annotates sensor data with spatial, temporal, and thematic semantic metadata. This technique builds on current standardization efforts within the Open Geospatial Consortium's Sensor Web Enablement (SWE) and extends them with Semantic Web technologies to provide enhanced descriptions and access to sensor data.

Model Driven Interoperability (MDI) is a methodological framework, which provides a conceptual and technical support to make interoperable enterprises using ontologies and semantic annotations, following model driven development (MDD) principles.

The Open Semantic Framework (OSF) is an integrated software stack using semantic technologies for knowledge management. It has a layered architecture that combines existing open source software with additional open source components developed specifically to provide a complete Web application framework. OSF is made available under the Apache 2 license.

References

  1. Ian Oliver (ed.) M3 Information SmartSpaces Technology Overview. Nokia Research Center Technical Report NRC-TR-2009-M3-1
  2. Ian Oliver, Ora Lassila (2011) Integration In The Large. W3C Workshop on Data and Services Integration
  3. Oliver Ian, Jukka Honkola(2008). “Towards the Dynamic Semantic Web Archived 2011-07-28 at the Wayback Machine ”. Presented at TripCom 2008
  4. Oliver Ian, Honkola Jukka (2008). “Personal Semantic Web Through A Space Based Computing Environment”. Presented at ICSC 2008
  5. Oliver Ian, Honkola Jukka, Ziegler Jurgen (2008). “Dynamic, Localized Space Based Semantic Webs”. IADIS WWW/Internet 2008. Proceedings, p.426, IADIS Press, ISBN   978-972-8924-68-3
  6. "Smart-M3". Sourceforge.net. Retrieved 2010-03-05.
  7. Honkola Jukka, Laine Hannu, Brown Ronald, Oliver Ian (2009). “Cross-Domain Interoperability: A Case Study”. Lecture Notes in Computer Science, Volume 5764/2009, p. 22 ISBN   978-3-642-04188-4. Presented at ruSMART 2009
  8. Liuha, P., Lappeteläinen, A., and Soininen, J-P. Smart Objects for Intelligent Applications - first results made open [ permanent dead link ], ARTEMIS Magazine, October 2009, No. 5, pages 27-29.
  9. Koljonen, T. ARTEMIS and the rest of the world [ permanent dead link ], ARTEMIS Magazine, October 2009, No. 5, pages 30-31.
  10. Soldatos John, Alexopoulos Dimitris (2006). “Web Services-based network management: approaches and the WSNET system”. International Journal of Network Management, Volume 17 Issue 1, Pages 33 - 50. Wiley InterScience.
  11. Farley P., Capp M (2005). “Mobile Web Services”. BT Technology Journal, Volume 23, Number 3, p. 202-213, ISSN 1358-3948 (Print) 1573-1995 (Online) . Springer.
  12. Liuha Petri, Soininen Juha-Pekka (2008). “Devices and Interoperability Ecosystem (DIEM)”. Archived 2011-07-20 at the Wayback Machine
  13. Oliver Ian, Törma Seppo, Nuutila Esko (2009). “Context Gathering in Meetings: Business Processes Meet Agents and The Semantic Web”. Presented at TCoB 2009
  14. Jantunen Joni, Boldyrev Sergey, Oliver Ian, Honkola Jukka (2009). ”Agent/Space-Based Computing and Radio Frequency Memory Tag Interaction”. Presented at IWERT 2009
  15. Web Architecture from 50,000 feet. W3C
  16. Berners-Lee Tim, James Hendler, Ora Lassila (2001). "The Semantic Web". Scientific American.
  17. "Triple Space Communication". Archived from the original on 2009-10-27. Retrieved 2009-10-07.
  18. NoTA World Open Architecture Initiative Archived 2008-11-19 at the Wayback Machine
  19. Ian Oliver (2012) Apps Considered Harmful
  20. Ian Oliver (2008) Sedvice: Triple-Space Computing Exploration Platform. Tripcom Workshop. Galway, Ireland
  21. Soininen Juha-Pekka, Lappeteläinen Antti (2009). ”M3 Smart Environment Infrastructure”. NoTA 2009 Conference Archived 2013-02-13 at archive.today .
  22. Cinotti Tullio Salmon, Bartolini Sara, D’Elia Alfredo, Roffia Luca, Spadini Federico, Trevisan Riccardo, Vergari Fabio, Zamagni Guido (2009). “Approaching the design of interoperable smart environments applications”. NoTA 2009 Conference Archived 2013-02-13 at archive.today .
  23. Smirnov, A., Kashevnik, A., Shilov, N., Oliver, I., Lappetelainen, A., Boldyrev, S. Anonymous Agent Coordination in Smart Spaces: State-of-the-Art. Smart Spaces and Next Generation Wired/Wireless Networking (ruSmart 2009), S. Balandin, D. Moltchanov, Y. Koucheryavy (Eds.), Springer, LNCS 5764, pp.42-51.
  24. Kary Främling, Ian Oliver, Jukka Honkola, and Jan Nyman (2009) Smart Spaces for Ubiquitously Smart Buildings. UBICOMM 2009.
  25. Alexey Kashevnik, Yuras Valchenko, Michael Sitaev, and Sergey Kokorin (2009) Smart Space Application: Meeting in an “Intelligent Room”. FRUCT program.
  26. Sergey Balandin, Ian Oliver, and Sergey Boldyrev (2009) Distributed Architecture of a Professional Social Network on Top of M3 Smart Space Solution Made in PCs and Mobile Devices Friendly Manner. UBICOMM 2009. (winner of the best paper award)
  27. "CoffeeBreak Assistant". Sourceforge.net. 2009-10-21. Retrieved 2010-03-05.
  28. "SmartSlog". Sourceforge.net.
  29. 1 2 "Structure - PetrSU". www.petrsu.ru. Archived from the original on 31 March 2010. Retrieved 15 January 2022.
  30. "KPI_low". SourceForge.
  31. "SmartConference". Sourceforge.net.
  32. "SmartScribo". Sourceforge.net.