210 likes | 365 Views
Model Context Prediction. Christos Anagnostopoulos bleu@di.uoa.gr Pervasive Computing Research Group: p-comp.di.uoa.gr Athens 2004. Context Prediction. Context can be pre-evaluated and provided to consumers in a transparent way Proactivity
E N D
Model Context Prediction Christos Anagnostopoulos bleu@di.uoa.gr Pervasive Computing Research Group: p-comp.di.uoa.gr Athens 2004
Context Prediction • Context can be pre-evaluated and provided to consumers in a transparent way • Proactivity • Predicted context can be used effectively to constrain retrieval of information • thereby reducing the complexity of the retrieval process • Definition of a generic context prediction-oriented model • Probabilistic vof(A): P • Computational vof(A): error (extrapolation…) • State-oriented vof(A): prior state of A
corridor boss secr empl Context Prediction Algorithm “context as set of states” Jan Petzold- University of Augsburg • Contextual patterns described into states • One-state prediction • Two-state prediction • k-state prediction • 2-level prediction of (1,2,k-states) • [pattern-l,2-state-prediction-value] • [ECBS, E1]:next state is E1(global,local) B1 ┐ B0 B E S E0 S0 S1 ┐ One-state Two-state ┐ E1
Context Prediction Architecture “context as classification vector” Rene Maryhofer- Institut fur Pervasive Computing, Johannes Kepler Universitat Linz sn ck c’k fm L1 Meeting s2 f2 c2 c’2 L2 AtDesk s1 f1 c1 c’1 <sensor-vector> <class-vector> <label-vector> <feature-vector> <future-class-vector> • Growing Neural Gas: Classification • Active LeZi: Incremental parsing for sequential prediction (K.Gopalratman,D.J.Cook)
Context Prediction Model (already exists?) “context as ?” • Context defined by Schilit: • Computing: e.g. network connectivity, communication costs, • communication bandwidth, nearby resources • such as printers, displays • User(entity): e.g. user’s profile, preferences, location, current social situation • Physical: e.g. lightning, noise levels, traffic conditions, temperature • Time: Natural context for many applications. • Derivable:Every physical (time) or conceptual (activity) parameter whose value may be independent of any context of the aforementioned categories • Predictive:a special kind of Derivable context, when the Computing, User and Physical contexts are recorded across a certain time interval. Such context specifies the predicted values of every kind of context.
Context Prediction Model “context as Derivable” Computing User Physical Derivable IndependentQualifier IndependentQualifier Inferred Time Predictive
Predictive Context Object - PCO (1) “context as Ichnos”
Predictive Context Object – PCO (2) “context as Ichnos” dependent: Vobs Vdrv {true,false} (dependent(obs,drv) = true) (predictionobs: Derivable Vobspredicted Vobs) Ichnos = {Observable o Derivable w | (idependent(i,w) = true) (predictioni(w) Vipredicted Vi ) (i dependent(i,j) = false), i,j Observable, ij |w| = 1} Qe= {(Icpr,Δ) p }, p is the history window length (i.e., past context values contributing to the prediction of new) Δis an n-dimensional vector, denoting the estimated error for the value of the kth Observable inside the Ichnos, (k=1..#Observables=n) Iprd the “predicted” Ichnos for the entity e Iprd =Icpr +Δ
2n restrictions n-1 restrictions n-1 restrictions 2 restrictions 4n restrictions total “[” 1-Interpolation – Natural Splines: The interval [0,n] is the range of the parameter u. The interval is divided into n subinterval of equal length, [uo,u1],...[un-1,un]. Let the polynomial in [ui-1,ui] be called bi(u) C(u)=bi(u) in the interval [ui-1,ui] The points ui are called knots. The requirements are:
“[…” 2-Interpolation – Uniform Cubic Splines:
“[……” 3-Interpolation – Uniform Cubic Splines: • To draw a curved controlled by n+1 points we need n+1 uniform Splines, which are defined by bi(u)=b(u-i) for i=0,…,n. This is a simple shifting of b(u) by an integer amount to the right. • Only those parts of the B-Splines which are within the interval [0,n] are considered. Example: Five uniform cubic B-Splines b0,..,b4 on equidistant knots -2,-1,0,…,6 on the interval [0,4].
“…]” 4-Interpolation – Uniform Cubic Splines: This formula is called uniform cubic B-Splines formula.
“]” 5-Interpolation – Uniform Cubic/Quadratic Splines quadratic cubic
PCO for Spatial information “context as Ichnos” obs = Longitude,Latitude drv = time, predictionLongitude = extrapolation-CubicBSpline, Vobs = GPS “Ichne” Ichnos PlanarLocation = {{Longitude,Latitude},{time}} Qu= {(Icpr,MEP)n}, dependent(Qu,K) = true, K = currentTime + step, step>0
PCO Operator – Dependency Inference (1) “context as Inferred Ichnos” “context merging?” “context of interest is expanded?” “obtain more contextual information?” • DI: Ichnos Ichnos Ichnos • {Ichnos I | dependent (I2.obs, I1.drv) = true (I.obs = I2.obs) (I.drv = I1.drv)} • context Entity inv: self.semanticConstraint[relativeEntity]. target.oclIsKindOf(self.bindsTo.semantic (self.semanticConstraint[entity].source).type) Ichnos LocBand = {{Bandwidth}, {Longitude}} Ichnos Planar = {{Longitude},{time}} dependent(Bandwidth,Longitude)= dependent(Bandwidth,semantic(Longitude))= dependent(Bandwidth,time) = true
PCO Operator – Dependency Inference (2) “context as Inferred Ichnos”
PCO – OWL graph “context as Inferred Ichnos”
“context as Inferred Ichnos” PCO – Ontology <Derivable rdf:ID="Terminal-Longitude"> <specifiesRange> <Observable rdf:ID="Terminal-Bandwidth"> <isSpecifiedBy rdf:resource="#Terminal-Longitude"/> </Observable> </specifiesRange> </Derivable> <Observable rdf:ID="Human-Longitude"> <relatesWith rdf:resource="#Terminal-Longitude"/> <isSpecifiedBy> <Derivable rdf:ID="Environmental-time"> <specifiesRange> <Observable rdf:ID="Human-Latitude"> <isSpecifiedBy rdf:resource="#Environmental-time"/> </Observable> </specifiesRange> <specifiesRange rdf:resource="#Human-Longitude"/> </Derivable> </isSpecifiedBy></Observable> <Terminal rdf:ID="SimensM55"> <bindsTo> <AvailableBandwidth rdf:ID="SiemensM55-bandwidth"><contains rdf:resource="#Terminal-Bandwidth"/> </AvailableBandwidth> </bindsTo> </Terminal> <SemanticConstraint rdf:ID="isNear"> <semantic rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</semantic> <targetEntity rdf:resource="#SimensM55"/> <sourceEntity> <Human rdf:ID="Bleu"> <isSemanticallyRelatedWith rdf:resource="#isNear"/> <bindsTo> <LinearPosition rdf:ID="Bleu-Latitude"> <contains rdf:resource="#Human-Latitude"/> </LinearPosition> </bindsTo> <bindsTo> <LinearPosition rdf:ID="Bleu-Longitude"> <contains rdf:resource="#Human-Longitude"/> </LinearPosition> </bindsTo> </Human> </sourceEntity> </SemanticConstraint> <SpatialSignal rdf:ID="BaseStation"> <contains rdf:resource="#Terminal-Longitude"/> <contains rdf:resource="#Terminal-Bandwidth"/> </SpatialSignal>
<owlx:Rule><owlx:antecedent>… <owlx:individualPropertyAtom owlx:property=”&pco;bindsTo”> <owlx:Variable owlx:name=”_entity1”> <owlx:Variable owlx:name=”_ichnos1”> </owlx:individualPropertyAtom> <owlx:individualPropertyAtom owlx:property=”&pco;bindsTo”> <owlx:Variable owlx:name=”_entity2”> <owlx:Variable owlx:name=”_ichnos2”> </owlx:individualPropertyAtom> <owlx:individualPropertyAtom owlx:property=”&pco;contains”> <owlx:Variable owlx:name=”_ichnos1”> <owlx:Variable owlx:name=”_observable1”> </owlx:individualPropertyAtom> <owlx:individualPropertyAtom owlx:property=”&pco;contains”> <owlx:Variable owlx:name=”_ichnos1”> <owlx:Variable owlx:name=”_derivable1”> </owlx:individualPropertyAtom> <owlx:individualPropertyAtom owlx:property=”&pco;contains”> <owlx:Variable owlx:name=”_ichnos2”> <owlx:Variable owlx:name=”_observable2”> </owlx:individualPropertyAtom> <owlx:individualPropertyAtom owlx:property=”&pco;contains”> <owlx:Variable owlx:name=”_ichnos2”> <owlx:Variable owlx:name=”_derivable2”> </owlx:individualPropertyAtom> <owlx:individualPropertyAtom owlx:property=”&pco;isSpecifiedBy”> <owlx:Variable owlx:name=”_observable1”> <owlx:Variable owlx:name=”_derivable1”> </owlx:individualPropertyAtom> <owlx:individualPropertyAtom owlx:property=”&pco;specifiesRange”> <owlx:Variable owlx:name=”_derivable2”> <owlx:Variable owlx:name=”_observable2”> </owlx:individualPropertyAtom> <owlx:individualPropertyAtom owlx:property=”&pco;relatesWith”> <owlx:Variable owlx:name=”_observable1”> <owlx:Variable owlx:name=”_derivable2”> </owlx:individualPropertyAtom> <owlx:individualPropertyAtom owlx:property=”&pco;isSemanticallyRelatedWith”> <owlx:Variable owlx:name=”_entity1”> <owlx:Individual owlx:name=”isNear”> </owlx:individualPropertyAtom> </owlx:antecedent> <owlx:consequent> <owlx:individualPropertyAtom owlx:property=”&pco;inferedSpecifiedBy”> <owlx:Variable owlx:name=”_observable2”> <owlx:Variable owlx:name=”_derivable1”> </owlx:individualPropertyAtom> </owlx:consequent></owlx:Rule> OWL Rules Language (Horrocks) “context as Inferred Ichnos”