modeling context constraints
play

Modeling Context Constraints Rdiger Gartmann Fraunhofer Institute - PowerPoint PPT Presentation

3. Fachgesprch Ortsbezogene Anwendungen und Dienste Modeling Context Constraints Rdiger Gartmann Fraunhofer Institute for Software and Systems Engineering ISST Dortmund Berlin, September 7 th , 2006 ISST Fraunhofer Institut


  1. 3. Fachgespräch »Ortsbezogene Anwendungen und Dienste« Modeling Context Constraints Rüdiger Gartmann Fraunhofer Institute for Software and Systems Engineering ISST Dortmund Berlin, September 7 th , 2006 ISST Fraunhofer Institut Software- und Systemtechnik

  2. Outline Introduction Context Model Transformation of Context Dimensions Service Scope Model Service Scope Representation Example Conclusion 2 ISST Fraunhofer Institut Software- und Systemtechnik

  3. Need for Defining Context Constraints: Service Roaming Services often have limited scope time latitude Users (especially mobile users) change their contexts frequently C 2 S 2 Services are valid for a certain user if user context is within service scope S 1 C 1 Whenever the context leaves the scope service roaming is needed longitude 3 ISST Fraunhofer Institut Software- und Systemtechnik

  4. Context Defined by values of n context dimensions time Represented by an n-tuple latitude In this example: 3 dimensions C C=(latitude, longitude, time) x 1 x 3 Certain value for each context dimension Single point in context hyperspace x 2 longitude Current context values of an entity (a user) 4 ISST Fraunhofer Institut Software- und Systemtechnik

  5. Context Hyperspace Characteristics Cartesian n-dimensional space Dimensions defined for [- ∞ ; ∞ ] Dimensions defined on � Context attributes Often limited range (e. g. longitude [-180;180]) Not always defined on � (e. g. room numbers) Not always numbered (e. g. weather: cloudy) Not always distinct (e. g. language capabilities: DE, EN) 5 ISST Fraunhofer Institut Software- und Systemtechnik

  6. Scales of Measurement, Scale of Representation Scales of measurement - Nominal Equal or unequal (e. g. male, female) - Ordinal Nominal + order of values (e. g. room numbers) - Interval Ordinal + definite difference (e. g. temperature) - Proportional / rational Interval + natural zero point (e. g. length) Scale of representation - Always proportional scale (because defined on � ) 6 ISST Fraunhofer Institut Software- und Systemtechnik

  7. Transformation Context attributes For each context attribute c i there has to be a transformation into the representation attribute d i ∀ ∃ → ∈ � c : f ( c ) d ; d i i i i This transformation is injective (For each input value there is a distinct output value) Context semantics Context may constist of more than name/value pairs Semantics are seperated from values (semantic layer) Semantic layer Contains scale of origin, relationships between context dimensions, ... (Not necessary for service roaming!) 7 ISST Fraunhofer Institut Software- und Systemtechnik

  8. Context Representation Operations Proportional scale allows many operations (Order, difference, ratio, ...) Only check for equality is needed for service roaming => Only this is allowed on the context representation per default All other operations are supported only if allowed by the semantic layer = Integrity ( ( )) ( ( )) op f c f op c i i Reverse transformation Leads to initial context value 8 ISST Fraunhofer Institut Software- und Systemtechnik

  9. Service Scope Representation Service scope: n-dimensional polytope (Assumption of linearity for simplification) time latitude Two (popular) ways of representation: - Boundary representation Each n-dimensional object is recursively described by its (n-1)-dimensional boundaries S 1 - Constraint representation Systems of linear inequations, each of them defining a half-hyperspace longitude 9 ISST Fraunhofer Institut Software- und Systemtechnik

  10. Comparison of Representations Boundary Very popular in Solid Modeling Used in GIS for representation of 2D/3D objects Very verbose for n-dimensional objects (for large n‘s) n ∏ ≥ + b i 1 (b n : number of bounding objects) n = i 1 Constraint Only capable to describe convex objects Less computation for ‚INCLUDES‘ operator Easier to convert boundary representation to constraint representation than other way round 10 ISST Fraunhofer Institut Software- und Systemtechnik

  11. Decision: Constraint Representation Reasons Verbosity of boundary representation is major criteria Many restrictions are already initially in constraint representation (e. g. time ≥ 8:00) Only few restrictions are initially in boundary representation (e. g. spatial restrictions by polygons) Non-convex scopes Each non-convex polytope can be decomposed into a set of convex polytopes. 11 ISST Fraunhofer Institut Software- und Systemtechnik

  12. Example Constraints: Time: between 8:00 and 21:00 time latitude Space: Within the following polygon S 1 longitude 12 ISST Fraunhofer Institut Software- und Systemtechnik

  13. Spatial Dimensions x 1 x 1 x 1 1. x 1 =-x 2 +1,4 2. x 1 =-0,125x 2 +0,6 3. x 1 =0,4x 2 -0,9 4. x 1 =-0,75x 2 +3,6 5. x 1 =0,16x 2 +1 6. x 1 =-0,4x 2 +2 7. x 1 =0,6x 2 +1 x 2 x 2 x 2 ⇔ -x 1 -x 2 +1,4 ≤ 0 ⇔ -x 1 +0,4x 2 -0,9 ≤ 0 (3) x 1 ≥ -x 2 +1,4 x 1 ≥ 0,4x 2 -0,9 (1) x 1 ≥ -0,125x 2 +0,6 ⇔ -x 1 -0,125x 2 +0,6 ≤ 0 (2) ⇔ x 1 +0,75x 2 -3,6 ≤ 0 (4) x 1 ≤ -0,75x 2 +3,6 ⇔ -x 1 +0,4x 2 -0,9 ≤ 0 ⇔ x 1 -0,16x 2 -1 ≤ 0 x 1 ≥ 0,4x 2 -0,9 x 1 ≤ 0,16x 2 +1 (3) (5) ⇔ x 1 +0,4x 2 -2 ≤ 0 ⇔ -x 1 -0,4x 2 +2 ≤ 0 x 1 ≤ -0,4x 2 +2 x 1 ≥ -0,4x 2 +2 (6) (6) ⇔ x 1 -0,59x 2 -1 ≤ 0 x 1 ≤ 0,59x 2 +1 (7) 13 ISST Fraunhofer Institut Software- und Systemtechnik

  14. Time Dimension Restriction Daily from 8:00 to 21:00 Transformation daytime d time = f(c time ) = hours(c time )*60 + minutes(c time ) c time = 8:00 ⇒ d time = 480 c time = 21:00 ⇒ d time = 1260 x 3 ≥ 480 ⇔ -x 3 + 480 ≤ 0 Constraints x 3 ≤ 1260 ⇔ x 3 - 1260 ≤ 0 14 ISST Fraunhofer Institut Software- und Systemtechnik

  15. Matrix Representation of Service Scope Spatial Restrictions -x 1 -x 2 +1,4 ≤ 0 -x 1 +0,4x 2 -0,9 ≤ 0 -x 1 -0,125x 2 +0,6 ≤ 0 x 1 +0,75x 2 -3,6 ≤ 0 -x 1 +0,4x 2 -0,9 ≤ 0 x 1 -0,16x 2 -1 ≤ 0 x 1 +0,4x 2 -2 ≤ 0 -x 1 -0,4x 2 +2 ≤ 0 x 1 -0,59x 2 -1 ≤ 0 -x 3 +480 ≤ 0 Time Restriction x 3 -1260 ≤ 0 − − ⎛ ⎞ Matrices 1 1 0 1 , 4 ⎜ ⎟ − − ⎛ ⎞ 1 0 , 4 0 0 , 9 − − ⎜ ⎟ ⎜ ⎟ 1 0 , 125 0 0 , 6 − ⎜ ⎟ 1 0 , 75 0 3 , 6 ⎜ ⎟ − − 1 0 , 4 0 0 , 9 ⎜ ⎟ ⎜ ⎟ − − 1 0 , 16 0 1 ⎜ ⎟ − ∨ ⎜ ⎟ 1 0 , 4 0 2 − − ⎜ ⎟ ⎜ ⎟ 1 0 , 4 0 2 − − ⎜ ⎟ 1 0 , 59 0 1 ⎜ ⎟ − 0 0 1 480 ⎜ ⎟ ⎜ ⎟ − 0 0 1 480 ⎜ ⎟ − ⎜ ⎟ ⎝ ⎠ 0 0 1 1260 − ⎝ ⎠ 0 0 1 1260 15 ISST Fraunhofer Institut Software- und Systemtechnik

  16. Is Context Within Service Scope? Definition Context is within service scope if context is element of the solution set of one of the matrices. Example Context (2,9; 1,2; 555) (lat = 2,9; long = 1,2; time = 9:15) (2,9; 1,2; 555) ∈ ╙ (M 2 ) Result ⇒ Context is within service scope and service is valid! 16 ISST Fraunhofer Institut Software- und Systemtechnik

  17. Conclusion Context model Different context models exist in literature Service roaming only needs context data Context semantics are seperated in semantic layer Context data + semantic layer + transformation functions should maintain all information provided by existing context models Scope representation Proposed representation is absolutely generic Linear scopes should be sufficient Constraint representation is preferable 17 ISST Fraunhofer Institut Software- und Systemtechnik

  18. Thanks for your attention! Rüdiger Gartmann gartmann@do.isst.fraunhofer.de ISST Fraunhofer Institut Software- und Systemtechnik

Recommend


More recommend