1
play

1 Logic-based Markup and Logic-based Markup and Query Language - PDF document

Overview Semantic Streams: a Framework for Composable Motivation Semantic Interpretation of Sensor What are Semantic Streams? Data Logic-based Markup and Query Language Kamin Whitehouse, Feng Zhao, and Jie Liu Query Processing


  1. Overview Semantic Streams: a Framework for Composable � Motivation Semantic Interpretation of Sensor � What are Semantic Streams? Data � Logic-based Markup and Query Language Kamin Whitehouse, Feng Zhao, and Jie Liu � Query Processing � Implementation � Summary Presented by Zhen Dai � Critique Motivation Semantic Streams � Allow users to easily query over sensor data � Fixed sensor infrastructure may be more common than ad-hoc sensor � For example: “I want the ratio of cars to trucks in the parking garage” deployment � Build upon the work of previous users � These sensors networks do not have � Utilize inference units to address new the same technical challenges as queries multi-hop ones � Allow users to place constraints � Non-technical user should not have to • Confidence level interpret raw sensor data. • Objective function, e.g. minimize energy consumption Semantic Streams Semantic Streams Programming Model Programming Model � Semantic Streams programming model uses two � Inference Unit example elements: � Desire new, legal interpretation of � Event streams � Inference units data using existing inference units � Event streams – flow of asynchronous events � Events can be object or person detection with properties like time or location Composable Inference � Inference units – processes that operate on event streams � They infer information from events and may generate new event streams or add information to existing events 1

  2. Logic-based Markup and Logic-based Markup and Query Language Query Language � Eight predicates are used in Semantic � Semantic Streams markup and query Streams: language � – sensor( <sensor type>, <region> ) � Based upon SICStus Prolog with constraint � – inference( <inference type>, <needs>, logic programming (real) <creates> ) � Logically governs the inference units � – needs ( <stream1>, <stream2>, ... ) � – creates ( <stream1>, <stream2>, ... ) � Inference units must specify the stream � – stream ( <identifier> ) objects that are needed and produced � – isa ( <identifier>, <event type> ) � It is declarative, unlike imperative � – property ( <identifier>, <value>, <property programming name> ) Logic-based Markup and Queries Query Language � Some examples: � Query – logic description of event streams and properties � sensor(magnetometer, [[60,0,0],[70,10,10]]). � inference( magVehicleDetectionUnit, � Examples: needs ( � stream ( X ), isa ( X ,vehicle) sensor (magnetometer, R ) ), creates ( � stream ( Y ), isa ( Y , histogram), stream ( X ), property ( Y , X , stream), isa ( X ,vehicle), property ( Y , time, property), property ( X , T ,time), stream ( X ), isa ( X , vehicle), property ( X , R ,region) ) ) property ( X , [[10,0,0],[32,12,02]], region) Query Processing Query Processing � Additional benefits of using inference � Inference Composition Engine composition � Similar to backward chaining – given a list of predicates, working backwards, proves each � Efficient – proof results and inference of the predicates with rules from a rule-base units can be reused or facts • Resource sharing, e.g. processing cycles � Also uses a virtual representation for each and bandwidth inference unit to preserve legality � Mutual dependence – two inference • Variables are scoped across streams units can declare each other as a pre- • Streams are acyclic condition 2

  3. Adding Constraints Adding Constraints � Quality of service (QoS) information can be selected � Multiple constraints can be set if upon, like total latency, energy consumption, confidence level needed � For example – an inference unit using 10ms to compute the speed of an object � A range of values can be set for � inference( speedDetectorUnit, constraints needs ( stream ( X ), � Execution monitoring or replanning isa ( X ,object), property ( X , L S, latency), occurs at runtime { L=LS+10 } ), � Error detection occurs at runtime creates ( stream ( X ), � Allows for sensor failure detection property ( X , S , speed), property ( X , L , latency) ) ) Implementation Implementation � Sensor network deployed on second floor of a parking deck on the Microsoft corporate campus over a 4x5 meter area in front of an elevator � Three different types of sensors used: a web camera, a magnetometer, infrared break beam sensors � micaZ motes used to control the break beam and magnetometer sensors � Upont Cappuccino TX-3 Mini PC acts as microserver Implementation Implementation User Interface � Consider three hypothetical users: � – Police Officer Pat wants a photograph of all vehicles moving faster than 15mph. � – Employee Alex wants to know what time to arrive at work in order to get a parking space on the first floor of the parking deck. � – Safety Engineer Kim wants to know the speeds of cars near the elevator to determine whether or not to place a speed bump for pedestrian safety. � All applications are to run simultaneously � Demonstrates automatic resource sharing � Reuses inference units 3

  4. Implementation Implementation � Pat � Alex stream ( X ), stream ( X ), property ( X , H , histogram), property ( X , P , photo), property ( X , Y , plottedStream), property ( X , Y , triggerStream), property ( X ,time,plottedProperty), property ( X ,speed, triggerProperty), stream ( Y ), stream ( Y ), isa ( Y ,vehicle), isa ( Y ,vehicle), Implementation Summary � Kim � Declarative programming allows non- stream ( X ), technical users to easily extract property ( X , H , histogram), semantic information property ( X , Y , plottedStream), � Semantic Streams allows for property ( X ,speed, plottedProperty), stream ( Y ), inference composition isa ( Y ,vehicle), � Users can set the constraints and objective functions Comparisons with Critique EnviroSuite � Physical simulation of the presented ideas seems � The two programming frameworks are convincing and lends credibility similar in idea, i.e. managing behavior of the entire network � The paper argues repeatedly for ease of use for non- technical users, but even given its declarative nature, � They both allow confidence level constraints Semantic Streams may prove formidable in usage for � They do both use the idea of abstractions those without a background in logic like logical objects and predicates � One of the arguments for this framework revolves � EnivroSuite follows the object-based around allowing for multiple applications running on programming system, however the same sensor network. How realistic is this scenario in real deployment? 4

  5. Critique Questions � Given the logical nature of the programming � ? scheme, it seems that more robust error handling can be easily implemented with regards to setting constraints. � It would be nice to see some concrete figures, i.e. processing time relative to other frameworks, from the result of the simulation � Minor editing errors 5

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend