1 / 37

Proactive Future Internet

Resource Agent. Resource Agent. Resource Agent. S-APL. Industrial Ontologies Group. “ Smart Semantic Middleware for Overlay Architecture ”. Proactive Future Internet. “Expert”. “Device”. “Service”. Vagan Terziyan Dmytro Zhovtobrykh Artem Katasonov. ICNS-2009, Valencia, Spain

penn
Download Presentation

Proactive Future Internet

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Resource Agent Resource Agent Resource Agent S-APL Industrial Ontologies Group “Smart Semantic Middleware for Overlay Architecture” Proactive Future Internet “Expert” “Device” “Service” Vagan Terziyan Dmytro Zhovtobrykh Artem Katasonov ICNS-2009, Valencia, Spain 22 April, 2009 University of Jyväskylä

  2. @ Web 2.0 Wikis Blogs Mashups Social Networks Web of Humans (Social Web, Web 2.0) Human Communities Facilitates Human-to-Human interaction Web

  3. Web of Things Ubiquitous Computing Barcodes and RFID Embedded Systems Sensor Networks Smart Spaces Web of Things Machines, devices, computers, etc. Facilitates Machine-to-Machine interaction Web

  4. SOA Web of Services Cloud Computing SOA SOAP, WSDL, UDDI SaaS Web of Services Software and Services Facilitates Software-to-Software interaction Web

  5. Web of Knowledge Ontologies Metadata Reasoning Semantic Technology Integration Web of Knowledge (Semantic Web, Web 3.0) Facilitates Knowledge-to-Knowledge interaction Knowledge and Data Collections Web

  6. F F F X X X Y Y Y Web of Intelligence (Distributed AI, Web 4.0) Facilitates Intelligence-to-Intelligence interaction Intelligent Agents and Applications Web of Intelligence Web of intelligent entities (intelligence services), browseable, searchable, composable, self-managed, dynamic, mobile … Agents and MAS Data and Web Mining Machine Learning Self-Management Context-Awareness Web

  7. GUN Concept GUN – Global Understanding eNvironment GUN = Global Environment + Global Understanding = Proactive Self-ManagedSemantic Web of Everything

  8. Global Understanding Environment (GUN) GUN can be considered as a kind of Ubiquitous Eco-System for Ubiquitous Society – the world in which people and other intelligent entities (ubiquitous devices, services, software, organizations, etc) “live” together and have equal opportunities (specified by policies) in mutual understanding, mutual service provisioning and mutual usability. Human-to-Human Human-to-Machine Machine-to-Human Machine-to-Machine Agent-to-Agent Software-to-Human Software-to-Machine Software-to-Software Human-to-Software …

  9. “Semantic Wave” (Web X.0) and GUN We may add here: Web 5.0 will come finally and it is about connecting models in a “Global Understanding Environment” (GUN), which will be such proactive, self-managed evolutionary Semantic Web of Things, People and Abstractions where all kinds of entities can understand, interact, serve, develop and learn from each other. [Vagan Terziyan] “The semantic wave embraces four stages of internet growth: Web 1.0, was about connecting information ... Web 2.0 is about connecting people. Web 3.0, is starting now… and it is about … connecting knowledge… Web 4.0 will come later … and it is about connecting intelligences in a ubiquitous web where both people and things can reason and communicate together.” [“Semantic Wave 2008” , Mills Davis ]

  10. What is UBIWARE ? (1) • UBIWARE (important step towards GUN) is a generic, domain independent middleware platform, which is meant to be able to provide the following support: • integration; • interoperability; • proactivity; • communication, observation, negotiation, coordination and collaboration; • automation, design and installation; • lifecycle management, execution monitoring, diagnostics, maintenance; • self-descriptiveness, semantic search, discovery, sharing, reuse; • planning and decision-making; • adaptation; • learning, mining, knowledge discovery; • context-awareness; • self-management including self-configuration; • security, privacy and trust; • etc... • …for … (see next slide)

  11. What is UBIWARE ? (2) • … for the following resources, systems and components (including their groups): • data information and knowledge:data, metadata, knowledge, logic, ontologies; • software and services:software components, software agents, softwareand information systems, services including Web-services; • humans:users, operators, experts, administration, customers, patients, doctors, etc; • hardware:machines, devices, networks, embedded electronics, RFID; • organizations; • intangibles:human and organizational capital, innovations, property rights, trust and reputation, brand recognition, etc.; • processes:behaviors, technologies and business models; • interfaces; • intelligence:reasoning, inference, planning, learning, data-mining, knowledge discovery, etc… engines; • ecosystems:environments, smart spaces, other middleware and CSCW tools; • abstractions and mathematical models; • etc.

  12. What is UBIWARE (in short) • UBIWARE is a tool to support: • design and installation of…, • autonomic operation of… and • interoperability among… • … complex, heterogeneous, open, dynamic and self-configurable distributed industrial systems;… • … and to provide following services for systemcomponents: • adaptation; • automation; • centralized or P2P organization; • coordination, collaboration, interoperability and negotiation; • self-awareness, communication and observation; • data and process integration; • (semantic) discovery, sharing and reuse.

  13. UBIWARE Project • Due to heterogeneity of provided services and supported components, UBIWARE is based on integration of several technologies:Semantic Web, Distributed Artificial Intelligence and Agent Technologies, Ubiquitous Computing, SOA (Service-Oriented Architecture), Web X.0, P2Pand related concepts. • The research and design on UBIWARE is started byIndustrial Ontologies Groupwithin UBIWARE project: “Smart Semantic Middleware for Ubiquitous Computing” (June 2007 – May 2010) funded by Tekes and industrial companies. • Project web page: http://www.cs.jyu.fi/ai/OntoGroup/UBIWARE_details.htm

  14. Why Semantic Web? (Ora Lassila) • “Semantic Web is about to reach its full potential and it would be too costly for companies not to invest to it…” (Ora Lassila, Nokia Research Center (Boston), IASW-2005, Jyvaskyla)

  15. Why Agents? • Growing complexity of computer systems and networks used in industry  need for new approaches to manage and control them • IBM vision: Autonomic computing – Self-Management (includes self-configuration, self-optimization, self-protection, self-healing) • Ubiquitous computing, “Internet of Things”  huge numbers of heterogeneous devices are interconnected • “nightmare of pervasive computing” when almost impossible to centrally manage the complexity of interactions, neither even to anticipate and design it. • We believe that self-manageability of a complex system requires its components to be autonomous themselves, i.e. be realised as agents. • Agent-based approach to SE is also considered to be facilitating the design of complex systems

  16. Challenges and Solutions • Very heterogeneous resources • Different nature (devices, Web services, humans). • Different organizations. • Not always the exact same domain. • Data-level heterogeneity • Calls for the Semantic Technology. • Protocol-level heterogeneity • GUN approach through the Agent Technology. • Each resource has a representative – software agent (not necessarily intelligent or even fully autonomous, but at least able to act as a programmable proxy). • Interactions among resources go through their agents.

  17. Challenges and Solutions (2) • Coordination • When considering physical devices (e.g. future Internet components), in contrast to purely digital world of Web services, coordination is critical. • Coordination is about resources planning their activities while attempting to avoid negative interactions (e.g. collision over a non-shareable resource) as well as exploit positive interactions (re-using each other results). • Enabling coordination among heterogeneous resources is even harder problem than data-level or protocol-level heterogeneity – communication about actions. • GUN approaches through semantic programming • Agents are programmed in RDF-based Semantic Agent Programming Language (S-APL). • Agents communicate their action plans in S-APL as well.

  18. S-APL Current UBIWARE Agent Architecture S-APL– is a hybrid of semantics (metadata / ontologies/ rules) specification languages, semantic reasoners, and agent programming languages. It integrates the semantic description of domain resources with the semantic prescription of the agents' behaviors S-APL – Semantic Agent Programming Language (RDF-based) Ontology http://users.jyu.fi/~akataso/sapl.html

  19. UBIWARE Agent: Possible Future Architecture RBE – Reusable Behavior Engine SoftSoul “Life” Behavior HardSoul RAB – Reusable Atomic Behavior Meta-Beliefs (preferences) Shared Meta-Beliefs SoftMind Ontobilityis self-contained, self-described, semantically marked-up proactive agent capability (agent-driven ontonut), which can be “seen”, discovered, exchanged, composed and “executed” (internally or remotely) across the agent platform in a task-driven way and which can perform social utility-based behavior Shared RBEs RBE RBE RBE RBE HardMind Beliefs (facts, rules, policies, plans) Configuration(GENOME) Ontobilities Shared Beliefs SoftBody Shared RABs RAB RAB RAB RAB HardBody Hardware Shared Hardware Genomeis part of semantically marked-up agent configuration settings, which can serve as a tool for agent evolution: inheritance crossover and mutation “Visible” to other agents through observation Environment May be an agent

  20. GENI – Next Generation Internet ? • GENI - Global Environment for Networking Investigations(proposed 25 August 2005) • The U.S. National Science Foundation (NSF) has proposed a next-generation Internet with built-in security and functionality that connects all kinds of devices, with researchers challenging the government agency to look at the Internet as a "clean slate.“ • GENI is a programmable, heterogeneous, networked system. It will consist of a collection of physical networking components, including links, forwarders, storage and processor clusters, and wireless subnets. These components will be programmable which is radically different from today's Internet architecture and protocols. GENI is equally likely to result in alternative protocols and architectures running inside the network.

  21. GENI Programmable Components Programmable Routers Programmable Edge Nodes Programmable Edge Clusters

  22. Future Internet Management • GENI management framework supposes overlay network architecture, where each application is run in a slice of the network. Overlay networks will also improve Internet routing and enable routing messages to destinations not specified by IP addresses. • The most important attribute of the management framework is its support for autonomous and decentralized control. Individual building blocks will be largely autonomous and self-managing and will be included in a slice by invoking a well-defined interface adapter on each. Collections of building blocks can be managed independently of each other. • The management framework also includes a set of independent services that will be used to embed a slice in a particular set of resources; monitor the behavior of both slices and building block components; collect, aggregate, and archive measurement data; and so on. [GENI Development Team]

  23. Active networks, overlay networks and declarative networking • Active networks (http://www.sds.lcs.mit.edu/darpa-activenet) allow a user injecting customized programs into the nodes of the network. Active architectures enable a massive increase in the complexity and customization of the computation that is performed within the network. • Any widely-distributed system needs to track its participating nodes, and be able to send messages among those nodes. This facility is often called an overlay network, since it provides an application with customized networking functionality (naming, topology, routing) that runs as a layer over traditional IP networking. • Declarative networking: (a) declarative language: “ask for what you want, not how to implement it” ; (b) declarative specifications of networks, compiled to distributed dataflows; (c) runtime engine to execute distributed dataflows (http://p2.cs.berkeley.edu/ )

  24. Perfect target for GUN and UBIWARE ? • If the future internet is really going to be a complex distributed self-managed system with decentralized control consisting of heterogeneous, autonomic and programmable components, as GENI initiative suggests, then GUN / UBIWARE approach (with S-APL language for declarative networking) might be the right enabling technology for that.

  25. @ SOA F X Y PROFI: Agent-Driven Middleware for Overlay Networks PROFI Applications Network

  26. Languages for Declarative Networking • Declarative languages are known to encourage programmers to focus on program outcomes (what a program should achieve) rather than implementation (how the program works). Recently declarative approaches have proven useful in a number of new domains, including program analysis, trust management, and distributed system diagnosis and debugging. Of particular interest is recent work on declarative networking, which presents declarative approaches for protocol specification and overlay network implementation. Declarative logic languages have been promoted for their clean and compact specifications, which can lead to code that is significantly easier to specify, adapt, debug, and analyze than traditional procedural code. Snlog is a dialect of Datalog, a well known deductive database query language. A typical user (whether an end-user, service implementer or system builder) writes only a short declarative specification using Snlog. The main language constructs are predicates, tuples, facts and rules. Snlog programs consist of period-terminated statements. D. Chu, L. Popa, A. Tavakoli, J.M. Hellerstein, P. Levis, S. Shenker, I. Stoica, The Design and Implementation of a Declarative Sensor Network System, SenSys’07, November 6–9, 2007, Sydney, Australia

  27. Recursive Query Execution Network protocol Distributed Dataflow Network messages Declarative network messages Dataflow Dataflow messages Dataflow messages Dataflow Dataflow Distributed recursive query Dataflow Declarative Networks Traditional Networks http://p2.cs.berkeley.edu/

  28. Approach: Declarative Networking • A declarative framework for networks: • Declarative language: “ask for what you want, not how to implement it” • Declarative specifications of networks, compiled to distributed dataflows • Runtime engine to execute distributed dataflows • Observation: Recursive queries are a natural fit for routing http://p2.cs.berkeley.edu/

  29. Semantic Agent Programming Language (S-APL) • Need to be able to ontologically describe not only the domain, but the agents themselves. • Our approach: RDF-based (more precisely, Notation 3) APL. • In a nutshell: • Let’s start treating agents’ programs as data • If it is data, let’s use the semantic approach (advantages are well-known) • Use Notation 3 (extension of RDF by Tim Berners-Lee) to overcome limitations of basic RDF.

  30. S-APL • It is a hybrid of semantic reasoners like CWM and agent programming languages like AgentSpeak, AFAPL. • From APLs point of view: S-APL is a language that provides all the features (and more) as normal APLs, while being RDF based and thus providing advantages of semantic data model and reasoning. • From semantic reasoning point of view: S-APL is CWM extended with common APL features such as: • Beliefs-Desires-Intentions (BDI) architecture, i.e. ability to describe goals and commitments - data items presence of which leads to some executable behavior, and • Ability to link to sensors and actuators implemented in a procedural language, namely Java.

  31. Options for S-APL use • The developers of a specific application can use S-APL in different ways: • Semantic Reasoning. S-APL rules operating on S-APL semantic data. • Semantic Data. RABs (i.e. Java components) operating on S-APL semantic data. • Workflow management. RABs operating on Java blackboard objects, with S-APL used only as workflow management tool, specifying what RABs are engaged and when. • Any combination of the three options above.

  32. S-APL data model G _C1 accordingTo John _C1 _C2 implies _C3 _C2 _C3 Time is Summer Sun is Shining

  33. S-APL: simple beliefs • Simple belief :John :Loves :Mary • Complex belief {:John :Loves :Mary} :accordingTo :Bill • Goal / desire: gb:I gb:want {:John :Loves :Mary} The prefix gb: is used here to denote the ontology of S-APL. In S-APL, making a statement has the meaning of adding it to the agent’s beliefs.

  34. S-APL: Rules • Conditional commitment: • {:John :loves ?x} => {...} => is the shorthand for sapl:implies. If the left side of => is truth (beliefs are connected with AND), the right side is copied into G. The commitment is removed after that (as fulfilled). Otherwise, it stays in beliefs and checked again and again until becomes true. • Persistent behavior rule (not removed upon execution) • { {...} => {...} } sapl:is sapl:Rule • Conditional action • {...} -> {...}; sapl:else {} -> is the shorthand for sapl:impliesNow. Such a condition will be checked only once and will be removed even if the condition was false. Adding gb:else block defines what should be added to beliefs if the condition was false.

  35. S-APL: Rules (2) • Exclusive condition: • {:John :Loves ?x . sapl:I sapl:doNotBelieve {?x .. ..} } => {...} If the object of sapl:doNotBelieve matches G, the left side of => is false. If there are several sapl:doNotBelieve, they are connected with OR • Commitment with a guard condition: • { {...} => {...} } sapl:is sapl:true ; sapl:existsWhile {...} If the object of sapl:existsWhile is false, its subject is removed – in this case, the commitment is dropped.

  36. S-APL as communication content language • We use S-APL also as inter-agent communication content language: • One agent sends a query as sapl:I sapl:want { {sapl:You sapl:answer {..query..} }} , the other answers with the matching part of its beliefs • One agent requests another agent to perform an action plan by sending the plan with sapl:I sapl:want { sapl:You sapl:do {..plan..} } • Such interaction is easily programmed with S-APL itself. The platform includes a set of “standard” models: Listener, Believer, Informer and Follower.

  37. Conclusion • The primary point behind the PROFI approach is a declarative networking overlay architecture comprising programmable network components and associated agent-based semantic management system. This particular middleware solution adds to overall network system flexibility, openness, context-awareness and manageability.

More Related