related work

75 %
25 %
Information about related work

Published on April 10, 2008

Author: Rina


Ambient Intelligent Environments Related Work:  Ambient Intelligent Environments Related Work Chris R. Baker crbaker@eecs Introduction:  Introduction Large amount of work done previously in related fields Pervasive/Ubiquitous Computing Context-aware Computing Mobile Computing Human-computer Interaction Internet Services Distributed Operating Systems Artificial Intelligence Most stems from Mark Weiser (PARC) {Invisible, Ubiquitous, Quiet, Calm} Computing in early 90’s What This Talk Includes: by the numbers:  What This Talk Includes: by the numbers 54% Software Infrastructures Applications, middleware (discovery, control, etc.), OS, devices 27% Communication Middleware e.g. UPnP 1 Hardware-ish project 5 Mapping related projects 98.6% text [snore] 1 slide w/picture (#63) 4 Demo Videos Project Covered…:  Project Covered… GaiaOS NMM Metaglue iRoom Obje Obje STB Jini UPnP uMiddle Automatic Path Creation Robert Grimm, Janet Davis, Eric Lemar, Adam MacBeth, Steven Swanson, Thomas Anderson, Brian Bershad, Gaetano Borriello, Steven Gribble, and David Wetherall. System support for pervasive applications ACM Transactions on Computer Systems, 22(4):421-486, November 2004. Robert Grimm. System support for pervasive applications. Phd thesis, University of Washington, December 2002. System architecture for pervasive computing Not middleware, but from ground up Environment service used to compose applications Nestable container for persistent storage and computations (components) Simple service discovery mechanisms Narrow API Also performs point-to-point communication Early and late binding Communication through asynchronous events Use of events makes change explicit to applications Failure of extending ‘single-node’ model to distributed systems Remote Event Passing (REP) Export event handler with symbolic descriptor Senders send to descriptor Migration services to support ‘follow-me’ applications Balance between transparent mobility (i.e. Sprite) and mobile agents Use of tuples as common data model Also defines type system Everything is a tuple! Query engine for searching (apply filters) Structured I/O is atomic New software design pattern for asynchronous interactions Logic/Operation Logic: computations that do NOT fail Operations: interactions that may fail Does not address security Written in Java and makes heavy use of JVM Good Appears to be very clean and well thought out Exposing change to applications Similar to our low-level services concept Makes an AIE “feasible” Bad Doesn’t appear to be a focus on a particular application space Not sure how well it really works GaiaOS:  GaiaOS Gaia: A Middleware Infrastructure to Enable Active Spaces.  Manuel Román, Christopher K. Hess, Renato Cerqueira, Anand Ranganathan, Roy H. Campbell, and Klara Nahrstedt, In IEEE Pervasive Computing, pp. 74-83, Oct-Dec 2002. GaiaOS:  GaiaOS Middleware OS Layer between commodity OS and applications Component Management Core Loads, unloads, creates, and destroys all applications and components Components are distributed objects Communication with CORBA Gaia kernel: 5 basic services Event Manager, Presence, Context, Space Repository, Context File System Gaia application framework Supports mobility, adaptation, and dynamic binding Active Space “A physical space coordinated by a responsive context-based software infrastructure that enhances the ability of mobile users to interact and configure their physical and digital environment seamlessly.” GaiaOS:  GaiaOS Event Manager Event distribution through decoupled communication model Presence Detect digital (services, applications) and physical entities (users, devices) Digital: use heartbeats Physical: sensors Context Applications query and register for events about the environment Personalization active space based on context Represented with 4-ary tuple Context(<ContextType>, <Subject>, <Relater>, <Object>) Context(location, chris, entering, room 3231) Space Repository Stores information about hardware and software in physical space Learns about new devices, etc. by subscribing to Presence service Contacts device for XML description Applications specify generic resources and use space repository map into an active space Context File System Personalize data access based on context GaiaOS:  GaiaOS Application framework Enable different UI modalities Application Generic Description Created by developer; lists application components, maximum/minimum instances allowed, and their requirements Application Customized Description List of components, their execution nodes, and initialization parameters Generated using ACD+Space Repository Policies specified by user affect how application framework reacts to context changes and how to implement mobility Extend traditional MVC (model-controller-view) model-presentation-controller-coordinator Presentation is generalization of view (more than graphical) Coordinator controls composition of application components Space-time sharing Allow more than one controller and presentation to be active at the same time App #1: audio player with PDA as song controller; speech to control volume App #2: calendar with PDA to browse appointments; speech to control functionality GaiaOS:  GaiaOS Demos GaiaOS:  GaiaOS Good Very similar set of goals and vision of future intelligent environments Well organized system architecture Services, communication model, etc. Bad Mapping is only 1-1; assume compatibility Entirely focused on HCI No multi-media, interacting applications NMM:  NMM Marco Lohse, Michael Repplinger, and Philipp Slusallek An Open Middleware Architecture for Network-Integrated Multimedia in Protocols and Systems for Interactive Distributed Multimedia Systems, Proceedings of IDMS/PROMS'2002 Joint International Workshops on Interactive Distributed Multimedia Systems / Protocols for Multimedia Systems, Coimbra, Portugal, November 26th-29th, 2002 Marco Lohse, Michael Repplinger, and Philipp Slusallek Dynamic Media Routing in Multi-User Home Entertainment Systems in Proceedings of The Eleventh International Conference on Distributed Multimedia Systems DMS'2005, Banff, Canada, September 5-7, 2005 NMM:  NMM Network-integrated Multimedia Middleware Flexible usage of different network and middleware technologies Software components represented as flow-graphs Nodes represent fine-grained processing units A nodes has several input and output ports (jacks) Each jack associated with a format: (type, subtype, format parameters) Synchronization performed by controller objects User-graph: high-level description No details of node configuration, formats, etc. User graph is mapped (allocated) to physical devices Given user constraints, bandwidth, QoS, etc. May include transcoding! Start from source(s), choose an output jack format, choose an intermediate node, choose that node’s input jack format, etc. If you get stuck, backtrack. Example: Read Node, Demux Node, Audio Decoder, MPEG Decoder, Audio Sink, Video Sink. NMM:  NMM Messaging system Two message types: buffer (data), composite (control): in-stream (treated like data), out-of-band (setting parameters) Use of proxy objects Messages travel through channels Proxy nodes are inserted between application and devices Convert between different interfaces? Distributed registry service Runs on each host and represents local resources Query to discover capabilities May forward to other hosts NMM:  NMM Good Similar flow-graph (refinement, mapping) approach Bad Focused only on multi-media Documents/papers difficult to read Why do they build the graph incrementally? Seems trivial if they’re only doing type matching. Metaglue:  Metaglue Michael Coen, Brenton Phillips, Nimrod Warshawsky, Luke Weisman, Stephen Peters, and Peter Finin. Meeting the Computational Needs of Intelligent Environments: The Metaglue System. In Proceedings of MANSE'99. Dublin, Ireland. 1999 Krzysztof Gajos, Luke Weisman and Howard Shrobe. Design Principles For Resource Management Systems For Intelligent Spaces. In Proceedings of The Second International Workshop on Self-Adaptive Software. Budapest, Hungary, 2001. Krzysztof Gajos. Rascal - a Resource Manager For Multi Agent Systems In Smart Spaces. Proceedings of CEEMAS'01, Kraków, Poland, 2001 Krzysztof Gajos. A Knowledge-Based Resource Management System For the Intelligent Room. M.Eng. Thesis. MIT, Cambridge, MA. 2000. Brenton Phillips. Metaglue: A Programming Language for Multi-Agent Systems. M.Eng. Thesis. MIT, Cambridge, MA. 1999. Metaglue:  Metaglue Metaglue System infrastructure for MIT Intelligent Room Mostly concerned with HCI applications Extension to Java programming language Provides ‘Agent’ base class, system services, virtual machine as execution environment Devices and agents provide services Application is extension of agent base class Agents can migrate freeze() and defrost() primitives Includes debugging facilities Metaglue:  Metaglue Namespaces Society:Occupation-Designation Example: hal:Lamp-door Agents refer to each other through abstract capabilities Connection between agents made through reliesOn() Use agentID, Occupation, or Occupation-Designation If successful, receive handle to agent Use a Catalog to find other agents Capabilities mapped dynamically by resource manger Mapping adapts to changes in the environment tiedTo() primitive used by agents to specify what resources they require at startup Can initiate Spreading and migration Metaglue:  Metaglue Resource Management Centralized Service mapping (weights relative cost and utility) Templates for services, resources, and requests JESS takes knowledge base produces candidates for mapping Arbitration (constraint satisfaction) JSolver determines optimal configuration Goal: resource independence Events In addition to method calls, agents can communicate via events Registration based Metaglue:  Metaglue Demo Metaglue:  Metaglue Good Notion of dynamic mapping high-level capabilities to system resources Mature project Bad Use of single node abstraction limits response to failure They hide the changing environment Mapping appears to be 1-to-1 i.e. only solving resource independence Assume uniform networking stack for all agents Unclear on implementation results; this works appears to be a secondary effect of studying AI and HCI (not the focus of the project) iRoom:  iRoom Fox, A., Johanson, B., Hanrahan, P., Winograd, T. (2000). “Integrating Information Appliances into an Interactive Space,”IEEE Computer Graphics and Applications 20:3 (May/June, 2000), 54-65. iRoom:  iRoom Usage Modalities Moving data Moving control Dynamic application coordination iROS Event and data heaps, iCrafter Event Heap Similar to event queue Can subscribe to Event auto-expire Event data structure is self describing and may be subclassed Entities post events to the event heap Query event heap for events matching a template Subscribe for notices when posts match template iRoom:  iRoom Data Heap Data stored with arbitrary attributes Can be queried based on attributes vs. locations Stores format information Transformation plugin can do simple transcoding iCrafter Service advertisement and invocation Invocation through event heap UI generator for services Returns UI that fits best with device iRoom:  iRoom Good Interesting communication mechanism Supports transcoding through data heap Bad Limited to their specific usage modalities Focus on using PDAs to control workplace environment See obje objection Obje:  Obje “The Case for Recombinant Computing,” W. Keith Edwards, Mark W. Newman, and Jana Z. Sedivy. Xerox Palo Alto Research Center Technical Report CSL-01-1, April 20, 2001. “Supporting Serendipitous Integration in Mobile Computing Environments,” W. Keith Edwards, Mark W. Newman, Jana Z. Sedivy, Trevor F Smith. International Journal of Human Computer Studies, 60:5-6, May 2004. pp. 666-700. “Challenge: Recombinant Computing and the Speakeasy Approach,” W. Keith Edwards, Mark W. Newman, Jana Z. Sedivy, Trevor F Smith, and Shahram Izadi. Proceedings of the Eighth ACM International Conference on Mobile Computing and Networking (MobiCom 2002). Atlanta, GA. September 23-28, 2002. Obje:  Obje (aka SpeakEasy) Xerox PARC 2003 Worried about interoperability How can you possibly write an application today to interoperate with tomorrow’s devices? Aside: Down and Across problem Mobile code to the rescue! Only agree on meta-interface at select layer(s) for bootsrapping (source initiated) Generic description of discovery, data transfer, control “Teach” other devices by extending their functionality Communication oriented Able to dynamically learn about new interface syntax, but not semantics Must still match data types Capable of exchanging data, just don’t know the interface (can also use transcoder) Execution model: Communicating set of components Keep users in the loop… Responsible for semantics Obje:  Obje Contains set of libraries to… Create components, leverage mobile code, enable discovery, checkpoint, recover, log, monitor, etc. Existing solutions Must know the interface and semantics Must use standard and narrow interfaces Not expressive enough to capture functionality of arbitrary devices and applications Recombinant Interface (meta-interface) Describe how one component can extend another at run-time No domain-specific semantics, only syntax (how) Humans define semantics (when) New functionality is delivered through mobile code Source component, through bootstrapping protocol, can send necessary code needed to communicate with other component Sender provided communication handler that lives in the receiver Type system ensures compatibility How to control? Applications can request a component specific UI, without need of application to understand component Users are tasked with controlling component Obje:  Obje Why isn’t UPnP Enough? (the “Obje objection”) Plug-n-play (PnP) is non-network UPnP PnP MS Word Example Buy a new printer, plug it in, connect to PC Windows recognizes a new devices, ‘discovers’ appropriate driver from Windows database, and installs the driver Word now has ability to use the new functionality of the printer, but that’s it. Only provides a new way for Word to do something it already knows how to do. What happens when you bring home the latest, greatest visualization device? How will your existing application make use of it, if the application was never written to do so? Obje:  Obje Good Their objection to existing middleware or software infrastructures is something everyone violates… How else will it work? Use of abstract capabilities and mapping?? Bad This resembles Active Networks Huge security problem “Tyranny of types” Jini:  Jini Jini:  Jini Everything is a service SOA All devices run a JVM Can locate services Discovery, Join, and Lookup protocols Jini:  Jini Good Bad UPnP:  UPnP UPnP:  UPnP DLNA: Standards based interoperability between PC and CE (Microsoft, Intel, Sony, HP) Focus on digital media and content services UPnP: Device networking, control, and discovery (originally Microsoft, 1999; now open standard) Language, platform, and OS independent Control points and devices (services) Heavy use of standard Internet technologies (IP, HTTP, TCP, GENA, SSDP, XML) Addressing, Discovery, Description, Control, Eventing, Presentation (web-based) Device and service profiles include: Internet gateway, access points, printers, scanners, media servers and players, HVAC, lighting, QoS, security, UI “Service Bus” model See Obje objections UPnP:  UPnP Good Bad uMiddle:  uMiddle “A Bridging Framework for Universal Interoperability in Pervasive Systems,” Jin Nakazawa, W. Keith Edwards, Hideyuki Tokuda, Umakishore Ramachandran. Proceedings of the 26th International Conference on Distributed Computing Systems (ICDCS’06). Lisboa, Portugal. July 4-7, 2006. uMiddle:  uMiddle Bridging framework between various communication middleware UPnP, Jini, Bluetooth, sensor motes, USDL Introduces 4 design patterns for interoperability frameworks Chooses point in design space Implements prototype at design point uMiddle:  uMiddle Translation Model How to translate semantics of devices between platforms Direct vs. Mediated (using meta-semantics) N-1 vs. 1 translators Semantic Distribution Where to project result of translation i.e. which devices are useable from which platform Scatter vs. Aggregate Intermediary Semantics Granularity Specific to mediated translation model How are natives device represented in intermediary for compatibility Course vs. Fine grained Location of Interoperability Layer ‘at-the-edge’ vs. Infrastructure Choose to implement: Mediated, Aggregated, Fine-grained, and Infrastructure uMiddle:  uMiddle Service Shaping Devices have physical and digital ports Translators convert between middleware platforms Dynamically choose appropriate translators Universal Service Description Language Intermediate representation Developed and benchmarked Application builder G2UI uMiddle:  uMiddle Good Certainly a necessary evil given the state of ‘standards’ Maybe useful starting point for UCR Bad Not clear in practice how well device semantics will map to different middleware platforms Obje Set-Top Box:  Obje Set-Top Box “An Extensible Set-Top Box Platform for Home Media Applications,” W. Keith Edwards, Mark W. Newman, Trevor F Smith, Jana Z. Sedivy, Shahram Izadi. IEEE Transactions on Consumer Electronics, 51:4, November 2005. pp. 1175-1181. Obje STB:  Obje STB Obje middleware platform for interoperability STB can reconfigure for a new network protocol, CODEC, or UI Can discover and utilize other Obje devices Provides storage, DVD playback, TV tuner, audio and video playback, and USB/1394 connectivity All of these services can be discovered by other Obje devices Obje STB:  Obje STB Good Resembles the UCR in many ways Easily implement DRM Bad No talk of FPGAs, but a conceptually simple extension Every file also contains the transcoder? Automatic Path Creation:  Automatic Path Creation Mao, Z.M., and Katz, R. “Achieving Service Portability Using Self-Adaptive Data Paths.” IEEE Communications, Jan. 2002. Automatic Path Creation:  Automatic Path Creation Any device to any device Data format mismatch APC locates necessary transcoders and inserts in data stream Enabling personal mobility Roaming clients APC detects user mobility and redirects stream Dynamic adaptation to resource variations Insert additional operators to account for high packet loss (FEC) or compression Provide feedback to applications about resource changes Enabling wide-area service scalability and availability Event-based programming and asynchronous, nonblocking I/O Achieving fault-tolerance for composed services Cluster-based service takes advantage of redundancy Automatic Path Creation:  Automatic Path Creation Logical Path Creation Directed graph of operators Find list of possible operator sequences Shortest path Application-specific costs/metrics Physical Path Creation Find physical machines to run operators Considering computation requirements, network characteristics, delay-sensitivity, data location, degradation properties, software/hardware requirements, etc. Insert nodes for performance enhancement FEC, compression, decompression Path instantiation, execution, maintenance Dynamic operators started; control paths created Control path used for monitoring operator and operator’s neighbors Automatic Path Creation:  Automatic Path Creation Good Very similar to what we had in mind using the flow-graphs Extend this to protocols and don’t suffer from “Obje objection” Resembles uMiddle Bad Cluster assumptions for reliability and fault tolerance Other Projects…:  Other Projects… Globe (large-scale wide area distributed systems) [VU] Aura (ubicom, HCI) [CMU] Coda (nomidic file system) [CMU] Odysssey/Chroma (mobile computing) [CMU] EasyLiving (interoperability, computer vision) [Microsoft] Portolano Project (ubicom) [UW] CoolTown [HP] PlanetLab (large-scale wide area distributed systems) [UCB] 2K (distributed adaptable OS) [UIUC] Ninja (internet services) [UCB] Java Media Framework [Sun] DirectShow [Microsoft] HAVi (multi-media interoperability) [Phillips et. al] PREMO ISO/IEC standard 14478 (middleware for distributed multimedia) VESA Home Network Committee (middleware for intelligent home) WWICE (middleware for distributed multimedia) [Phillips] “WWICE An architecture for In-Home Digital Networks” Heribert Baldus, Markus Baumeister, Huib Eggenhuisen, András Montvay, Wim Stut (~2000) And many, many, many more… High-order bits:  High-order bits Boundary Principle All assume bounded physical space Infrastructure >> “at-the-edge” See this at the high-level software infrastructure, middleware, hardware Inference is dangerous Leave this to those crazy AI guys and gals Many projects assume interoperability Suffer from the “Obje objection” Relations to our work?:  Relations to our work? What is NOT new… UCR concept Obje STB Dynamic mapping from high-level application description to system resources GaiaOS, Metaglue, APC, NMM Flow-graph NMM, Java Media Framework, DirectShow What is new? Environment (content, capability, personae) concepts Refinement at all levels of networking stack Use of resource manager to make devices interoperable at physical, protocol, and presentation layers taking into account all constraints (preferences, permissions, resource scarcity, fault tolerance, QoS, etc.) What are the challenges?:  What are the challenges? 7 Challenges in Ubicomp:  7 Challenges in Ubicomp “At Home with Ubiquitous Computing: Seven Challenges,” W. Keith Edwards and Rebecca Grinter. Proceedings of the Conference on Ubiquitous Computing (Ubicomp 2001). Atlanta, GA. September 30-October 2, 2001. 7 Challenges in Ubicomp:  7 Challenges in Ubicomp Accidentally Smart Home Technology will be incrementally deployed; current homes are not built to be ‘smart’. How will users cope with their home becoming ‘smart’? Who will debug it? Impromptu Interoperability Nearly impossible to have a priori agreement on syntax and semantics New models of connectivity Standardize communication at protocol/interface and leave humans to impose semantics. Ex: tuple spaces, active networks 7 Challenges in Ubicomp:  7 Challenges in Ubicomp No Systems Administrator “Appliance-centric” Home appliances are single function devices with simple and intuitive interfaces “Utility-centric” Telephone network ‘intelligence’ exists in network itself; home contains minimal front-end “Out-sourced” home Designing for Domestic Use Studies have shown (telephone, electricity) that designers and vendors had no idea how it would eventually be used Telephone not meant to be a social device “electricity girls” Social Implication of Aware Home Technologies ‘Labor Saving’ or shifting burden of work? (washing-machines) 7 Challenges in Ubicomp:  7 Challenges in Ubicomp Reliability Why doesn’t your TV crash? Differences in development culture, technological approaches, expectations, and regulations Infrastructure vs. edge devices Inference in the Presence of Ambiguity How much inference is needed? Sensor data == state of world? Inference of user intent from sensors? Act on inference of user intent? Inference based on layers of ambiguous input Difficult for humans so how can we expect computers to do it? Must have override capability! Discussion Notes:  Discussion Notes What are the challenges?? Discussion Notes:  Discussion Notes Discussion Notes:  Discussion Notes Backup:  Backup Focus by School:  Focus by School GaTech Aware Home Elderly adults, healthcare MIT Intelligent Room Artificial intelligence and HCI Stanford iRoom HCI for workspaces w/ PDAs UW Portolano Project User interfaces, network infrastructure, and distributed services UIUC GaiaOS, 2k HCI CMU HCI, ‘distraction free’ computing Down and Across:  Down and Across Aside: Down and Across problem Down: which layer to build on Choose standards; winner takes all (network effect) Across: maintain agreement on protocol and syntax to interoperate Again choose standard, but still face Across problem Network Effect:  Network Effect “A network effect is a property that exists in a distributed system when a single component in the system increases in value as a result of actions elsewhere in the system.” “Network effects result because of combinatorial explosions of possible interconnections between the parts of the system.”

Add a comment

Related presentations

Related pages Übersetzungsforum :: related work :: Übersetzung ...

Hallo, ich bin Ausländer, schreibe gerade eine akademische Arbeit. Wie sagt man related works auf Deutsch?? Danke im Voraus.
Read more Wörterbuch :: work-related :: Deutsch-Englisch ...

Englisch-Deutsch-Übersetzung für work-related im Online-Wörterbuch (Deutschwörterbuch).
Read more

related work - Deutsch-Übersetzung – Linguee Wörterbuch

Viele übersetzte Beispielsätze mit "related work" – Deutsch-Englisch Wörterbuch und Suchmaschine für Millionen von Deutsch-Übersetzungen.
Read more

Suggested Guidelines for Finding Materials to include in the

Suggested Guidelines for Finding Materials to include in the "Related Work" Sections of Conference Papers. These are my personal suggestions and not ...
Read more

Related Work | LinkedIn

View 5649 Related Work posts, presentations, experts, and more. Get the professional knowledge you need on LinkedIn.
Read more

Work | Definition of Work by Merriam-Webster

Related to work. Synonyms number, opus, piece, composition Related Words classic, magnum opus, masterpiece, pièce de résistance, showpiece; model ...
Read more

non-work related - Deutsch-Übersetzung – Linguee Wörterbuch

Viele übersetzte Beispielsätze mit "non-work related" – Deutsch-Englisch Wörterbuch und Suchmaschine für Millionen von Deutsch-Übersetzungen.
Read more

Work, Employment - Vocabulary - Learning English

Work, Employment – Vocabulary List. 1. General vocabulary. a regular job; commuter; employee; employer; He took a job as a waiter. job; occupation ...
Read more

work definition and synonyms | Macmillan Dictionary

Define work and get synonyms. What is work? work meaning, pronunciation and more by Macmillan Dictionary
Read more

Related Careers and Links - U.S. Department of State

Related Careers and Links. While a career in the Foreign Service is a unique opportunity to show the world a side of America it has never seen, there are ...
Read more