This application claims priority under 35 U.S.C. §119 to European Patent Application EP 08 29 0188, filed Feb. 28, 2008, titled “TRUSTWORTHINESS ASSESSMENT OF SENSOR DATA PROCESSING,” which is incorporated herein by reference in its entirety.
The description is directed generally to wireless sensor networks (WSN) and in particular to a computer-implemented method, computer system, and computer program product for trust evaluation of sensor data in a sensor data life-cycle.
Wireless sensor networks (WSN) are sensor networks empowered with short wireless communication capabilities. WSNs enable random and dense deployment of smart and low-cost devices in physical areas such as battlefield and body. The ability of WSNs to monitor and control physical environments makes WSN attractive for a lot of different application domains such as military, health care or traffic control. However, the integration of WSN into (complex) computer or software applications (e.g. a software for a medical emergency response center or weather forecasting systems such as a gale or storm warning system) raises technical challenges such as data routing and processing (e.g. data aggregation and data fusion). In addition to those technical challenges, the integration of WSN into software applications raise technical challenges regarding security and trust issues. In particular, such software applications require secured and trusted sensor data processing as well as secured and trusted delivery of sensor data e.g. form a WSN to a software application. In order to prevent false aggregation or fusion of data or information, software applications may, for example, require trust mechanisms for establishing their confidence in the delivered sensor data from the WSN.
Due to vulnerability of a WSN (or single sensor nodes in a WSN), attackers may easily capture a sensor node. An attacker may, for example, tend to make a WSN interoperable. Although cryptographic mechanisms are deployed for ensuring confidentiality and integrity of sensor data, those approach do not cope with compromised sensor nodes wherein cryptographic material of the sensor node is disclosed to an attacker.
In one general aspect, a computer-implemented method for trust evaluation of (physical or electronic) sensor data during at least part of a sensor data life-cycle may include evaluating an acquisition trust value (ATV) of sensor data at a sensor data acquisition module from at least one sensor node in a wireless sensor network (WSN), wherein the WSN comprises at least one sink, evaluating a delivery trust value (DTV) of sensor data at a sensor data delivery module from a sending entity to a receiving entity; and evaluating a processing trust value (PTV) at a sensor data processing module in a processing entity, to obtain a trust evaluation of the sensor data (or in order to obtain a sensor data trustworthiness evaluation).
According to another aspect, evaluating a processing trust value (PTV) may include evaluating an aggregation trust value (AgTV) and evaluating a fusion trust value (FTV) in the processing entity. According to yet another aspect, the processing entity may either involve the at least one sensor node or a middleware. According to yet another aspect, the sending entity may involve (particularly be) the at least one sensor node and the receiving entity may involve the at least one sink or the sending entity may involve the at least one sink and the receiving entity may involve a middleware or the sending entity may involve the middleware and the receiving entity may involve at least one software application.
According to yet another aspect, evaluating an acquisition trust value (ATV) may further include determining at least one trust value φ (Pa
According to yet another aspect, evaluating a delivery trust value (DTV) may further include determining a trust value φ (Ps,f) of the sending entity in the sensor data, determining a trust value φ (Pf,e) of the receiving entity in the sending entity, and evaluating the delivery trust value (DTV) using an operator φdel depending on said trust values φ (Ps,f) and φ (Pf,e). Sensor data may be transferred or routed, for example, from sensor node to sink, from sink to middleware, and from middleware to software application, i.e. among entities related to a sensor data life-cycle. Each entity may have a confidence or trust in another entity delivering sensor data to said entity, denoted φ (Pf,e). Furthermore, the entity delivering the sensor data itself may have a confidence in the sensor data to be delivered, denoted φ (Ps,f). Trustworthiness of the delivered sensor data from the sending entity to the receiving entity may then be expressed or specified by the corresponding DTV which may be computed based on said two trust values.
According to yet another aspect, evaluation of an aggregation trust value (AgTV) may further include determining at least one trust value φ (Ps
According to yet another aspect, evaluation a fusion trust value (FTV) may further include determining at least one trust value φ (Ps
According to yet another aspect, the method may further include determining the at least one trust value φ (Pa
According to yet another aspect, the method may further include determining the trust value φ (Ps,f) by computing an opinion value ωsf; determining the trust value φ (Pf,e) by computing an opinion value ωfe, and implementing the operator φdel using a discount operator applied to the opinion values ωsf and ωfe.
According to yet another aspect, the method may further include determining the at least one trust value φ (Ps
According to yet another aspect, the method may further include determining at least one trust value φ (Ps
According to yet another aspect, implementing the combine operator may further include implementing a combineb operator to compute belief by combining at least one belief value bi of the at least one sensor data attribute or of the at least one piece of sensor data according to the at least one corresponding weighting value, and implementing a combineu operator to compute uncertainty by combining at least one uncertainty value ui of the at least one sensor data attribute or of the at least one piece of sensor data according to the at least one corresponding weighting value αi, wherein an influence of the uncertainty is minimized in comparison with the belief.
In another general aspect, a computer program product may include computer readable instructions, which when loaded and run in a computer and/or computer network system, cause the computer system and/or the computer network system to evaluate an acquisition trust value (ATV) of sensor data at a sensor data acquisition module from at least one sensor node in a wireless sensor network (WSN), wherein the WSN comprises at least one sink, evaluate a delivery trust value (DTV) of sensor data at a sensor data delivery module from a sending entity to a receiving entity, and evaluate a processing trust value (PTV) at a sensor data processing module in a processing entity, to obtain a trust evaluation of the sensor data.
In another general aspect, a computer system for trust evaluation of sensor data during at least part of a sensor data life-cycle, the system including computer-readable instructions stored on a computer readable-medium, may include a sensor data acquisition tool operable to evaluate an acquisition trust value (ATV) of sensor data at sensor data acquisition from at least one sensor node in a wireless sensor network (WSN), wherein the WSN comprises at least one sink, a sensor data delivery tool operable to evaluate a delivery trust value (DTV) of sensor data at sensor data delivery from a sending entity to a receiving entity, and a sensor data processing tool operable to evaluate a processing trust value (PTV) at sensor data processing in a processing entity, to obtain a trust evaluation of the sensor data.
The subject matter described in this specification can be implemented as a method or as a system or using computer program products, tangibly embodied in information carriers, such as a CD-ROM, a DVD-ROM, a semiconductor memory, and a hard disk. Such computer program products may cause a data processing apparatus to conduct one or more operations described in this specification.
In addition, the subject matter described in this specification can also be implemented as a system including a processor and a memory coupled to the processor. The memory may encode one or more programs that cause the processor to perform one or more of the method acts described in this specification. Further the subject matter described in this specification can be implemented using various MRI machines.
Details of one or more implementations are set forth in the accompanying exemplary drawings and exemplary description below. Other features will be apparent from the description and drawings, and from the claims.
As described herein, trust or trustworthiness in physical sensor data may be evaluated or assessed in or at each processing step of a sensor data life-cycle in a sensor data processing system. A sensor data life-cycle may include acquiring sensor data from one or more sensor nodes in a WSN, processing (comprising aggregation and fusion) and routing the sensor data within the WSN towards at least one sink of the WSN and from there to a middleware. The middleware may then perform processing (e.g., aggregation and fusion) on the sensor data not generally supported by the one or more sensor nodes, and may then deliver the sensor data to at least one software application. Hence, a sensor data life-cycle may include sensor data acquisition, sensor data delivery, and sensor data processing including sensor data aggregation and sensor data fusion. An entity in such a sensor data life-cycle performing one or more of said (sensor data) operating or processing steps may include one or more of a sensor node of a WSN, a sink of a WSN, a middleware, or a software application. The middleware may be in charge of integrating the WSN into a software application.
Trust or trustworthiness in such a sensor data life-cycle may be then evaluated (assessed, determined or computed) by computing corresponding trust values in each of the processing steps of the sensor data life-cycle. The corresponding trust value (i.e. ATV, DTV, PTV) may then express or specify an expectation probability of a corresponding entity that the sensor data is true (and thus trustworthy enough to be used). A trust value may be a real number between 0 and 1 excluding 0 and 1 themselves, wherein a trust value closer to 0 is less true (i.e. the sensor data is rather not trustworthy) than a value closer to 1 (i.e. the sensor data is rather trustworthy). For example, during sensor data acquisition, a sensor node acquiring sensor data has a ATV in said sensor data. Similarly, during sensor data processing, the sensor node or a middleware processing the sensor data has a PTV in said sensor data. During sensor data delivery, a receiving entity has a DTV in said sensor data received from a sending entity.
In a computer system, as described in more detail herein, a trust value may be expressed or specified in terms of a fuzzy logic value assigned to a proposition. In one example, a proposition may be any event occurring in a sensor data life-cycle such as sensor data “pulse of 90” acquired from a sensor node. Furthermore, for trust evaluation of sensor data in a sensor data life-cycle, each trust value on a proposition may be computed according to an entity, which has the computed trust value in said proposition. In other words, trust of sensor data from acquisition from sensor nodes in a WSN to delivery to software applications including aggregation and fusion may be specified. Hence, a trust model may be determined for sensor data processing in a sensor data life-cycle by computing appropriate trust values each of the participating entities has in the sensor data at or during a specific processing step of the life-cycle. Thus, in addition to supporting trust evaluation of data directly acquired from sensor nodes, the present description is directed to trustworthiness assessment or trust evaluation of sensor data processing during their complete life-cycle.
In the following, a detailed description of examples will be given with reference to the drawings. It should be understood that various modifications to the examples may be made. In particular, elements of one example may be combined and used in other examples to form new examples.
The following description(s) relate to establishment of trust in sensor data retrieved from sensor nodes in a wireless sensor network, having an increased amount of homogeneity in the evaluation process of sensor data relative to existing systems. In particular, the described implementations are capable of considering the complete sensor data life-cycle. By extending trustworthiness evaluation beyond sensor data acquired from sensor nodes, software applications are able to access their confidence or trust in further data processing. Furthermore, the described approaches are capable of considering features beyond an origin or value of sensor data in their trustworthiness evaluation process(es).
As referenced herein, a wireless sensor network (WSN) may be understood to include, for example, virtually any (possibly self-organized) wireless network typically involving low-cost and low-power sensor devices which are capable of physically and/or chemically sensing, processing, routing and disseminating data toward special sensor nodes, so-called sinks, in a very efficient way, by saving sensor node battery or WSN bandwidth. A sensor data device may include, for example, a pulse sensor, a blood pressure sensor and further physiological (e.g. received from body tissue or fluids such as blood, blood products, urine, and/or bile), psychological, and/or behavioral data sensors, a room temperature sensor, or sensors for retrieving weather data. A sink (collecting or transmitting sensor node) is a specific sensor node in a WSN which may be capable of receiving and/or collecting sensor data acquired from other sensor nodes in the WSN and of transmitting collected sensor data, e.g. in packed form, to other software components. In this context, various kinds of failure (e.g., crash, omission, timing, value or arbitrary) in a WSN may occur. Crash or omission may imply no response from the sensor to a sensor data request. Timing may refer to time-out during request processing. Value failure may deal with delivering incorrect or compromised sensor nodes. Arbitrary failure may comprise one or more further kinds of failure which may not be classified in one of the previously described categories or classes of failure.
A sensor data life-cycle in a sensor data routing and processing system may refer to the complete process from the acquisition of data and/or information from a (sensor) node in a WSN, to its delivery to software applications through a middleware, including data processing such as (data) aggregation and/or (data) fusion at sensor nodes and/or the middleware.
Trustworthiness of computer systems and/or software applications in data, system entities, and/or data processing, as these and similar terms may be used herein, may be described as the expectation of cooperative behavior of a computer-implemented entity such as a sensor node, a software component, or a web service. Trust may encompass objective and subjective aspects on such an entity including, e.g., reputation. In other words, trust may be defined as the belief of a computer entity (e.g. sensor node, sink, middleware, applications) in the observation of a given event (occurring in a computer system or software application such as data acquired from a sensor node). Trust may be then evaluated or computed (by a computer program) as the probability expectation that a given event would occur or is true. Such a probability expectation may be expressed as a real number between 0 and 1, wherein a value closer to 0 is less probable to be true (hence, less trustworthy) than a value closer to 1.
The WSN 100 comprises one or more sensor nodes 101, 102, 103, 104, 110, 120 representing electric, electronic or digital sensor devices, wherein at least one of the sensor nodes 101, 102, 103, 104, 110, 120 is a sink 110, 120. Sensor devices may be any kind of electric, electronic or digital sensor such as physical, chemical, biological sensors for retrieving physiological (e.g. received from body tissue or fluids such as blood, blood products, urine, and/or bile), psychological, and/or behavioral data such as blood pressure, body temperature, pulse, blood sugar level, etc. from human beings or sensors for measuring environmental or weather data, and others.
The sink (receiving or collecting sensor node) 110, 120 is a special sensor node which is (beyond measuring of sensor data) capable of receiving sensor data from one or more sensor nodes 101, 102, 103, 104 in the WSN 100 and to transport the received sensor data to a further application such as the middleware 200 using appropriate transport protocols. In other words, a sink 110, 120 supports routing and transport or delivery of sensor data acquired from one or more sensor nodes 101, 102, 103, 104 within a WSN 100 and to a further application such as a middleware 200.
In the present context, sensor data may include or refer to a composition of a type or sensor type (e.g. ambient, temperature, pulse) and a finite list of attributes or sensor data attributes. An attribute may be any information which characterizes sensor data or a piece of sensor data. Formally, as described in more detail with respect to
Sensor data acquisition may comprise acquisition of (analog/digital) signals and/or waveforms received at a sensor device and processing the received signals to obtain desired information and/or data. As may be appreciated from the above, the received signals may be based on or relate to measurements of physical phenomenon or physical property of an object such as the temperature change of a room, the intensity or intensity change of a light source or various physiological parameters of a human being such as heart rate and blood pressure. On or more transducers may be used to convert the physical property or phenomenon into corresponding measurable electrical signals such as voltage. Hence, during data acquisition, appropriate sensors may convert any measurement parameter to an electrical and/or optical signal, which may be acquired by data acquisition hardware. Acquired data may be displayed, analyzed, and stored on a computer or computer system.
The middleware 200 enables or allows for a seamless integration of the WSN 100 into software application 310, 320 in order to assess a sensor data life-cycle. In one implementation, the middleware 200 is a common or standard middleware for WSN. The middleware 200 hides complexity of data-routing or heterogeneity of sensor networks to software applications, in favor of a simplified interface to preprocessed and standardized sensor data.
Middleware in this context may refer to a particular software component that may aim at providing a seamless integration of WSN into software applications. The middleware may hide complexity of data routing or heterogeneity of sensor networks to software applications, in favor of a simplified interface to preprocessed and standardized sensor data. Middleware may be distinguished among middleware for WSN and middleware for distributed context-aware systems.
The software applications 310, 320 may include (complex) front-end systems which are capable of further processing and/or representing sensor data received from the one ore more sensor nodes 101, 102, 103, 104, 110, 120 in the sensor data system establishing a sensor data life-cycle as shown in
In a life-cycle of sensor data as exemplarily shown in
Sensor data aggregation 232 may include or refer to gathering information and/or data from different sources such as sensor nodes, middleware, and/or data fusion. Within a WSN, sensor data aggregation may support reduction of resource consumption. At middleware level, (sensor data) aggregation may provide software applications with a single collection of sensor data of interest for the software applications. In other words, sensor data aggregation may be an automated collection of sensor data without any modification or inference on the data.
Sensor data fusion 234 may relate to an automated computing process of combining data or information to estimate or predict one or more entity states. Sensor data fusion may be substantially equivalent to any reasoning or statistical analysis about sensor data which may result in a more abstract or complex contextual information. Sensor data fusion may imply a relationship (e.g. inference, rule, similarity) between information and/or data involved in the fusion. In other words, sensor data fusion may comprise automatic (or automated) reasoning on a set of sensor data based on computer-implemented inference rules resulting in a single sensor data.
Optionally, the middleware 200 may store received (and possibly processed) sensor data in a sensor data storage device 220 such as a database. Using a sensor data delivery system 240, the middleware 200 delivers (transports, transmits, or transfers) the sensor data to one or more software applications 310, 320 possibly through a standardized or common interface.
In other words, a sensor data life-cycle in a sensor data processing system as shown in
Definition 1. (Sensor Data Attribute)
Let a sensor data attribute be a pair a=<t,v> where t is the attribute type and v its value.
Accordingly, a sensor data attribute 112 comprises a (sensor data attribute) type 112a, 112b, 112c, 112d such as accuracy, origin, value, metric, or type of measurement describing or characterizing data which could be retrieved from a corresponding sensor node 110. For example, a sensor data type body-temperature 111a (i.e. specifying a body temperature sensor) may comprise a sensor data attribute 112 of attribute type value 112b having the value 37.5.
Based on definition 1 of sensor data attributes 112, (a piece of) sensor data 111 acquired from a sensor node 110 in a WSN 100 is formally defined below in definition 2:
Definition 2. (Sensor Data)
Let a piece of sensor data s be a pair <stype,<ai>i=0n> where stype is the sensor data type and <ai>i=0n is the list of its n attributes such that for each i=1, . . . , n there exists only (exactly) one sensor data attribute ai of attribute type ti.
Accordingly, sensor data 111 or a piece of sensor data 111 received or acquired from a sensor node 110 (e.g. a sensor device such as a body temperature sensor) has a sensor (data) type 111a such as body temperature and a finite list of sensor data attributes 112, wherein each of the sensor data attributes 112 has a different sensor (data) attribute type 112a, 112b, 112c, 112d.
An example of sensor data 111 acquired from a sensor node 110 (e.g. a temperature sensor device) having sensor type bodytemperature and a list of sensor data attributes 112 each having a different attribute type 112a, 112b, 112c, 112d is shown below.
= < bodytemperature,
Accordingly, sensor data s acquired from a sensor node 110 has sensor type 111 bodytemperature and a finite list of sensor data attributes 112, each having a different sensor data attribute type 112a, 112b, 112c, 112d: value, metric, typeofmeasurement, origin, accuracy and a corresponding value: “37.5”, “celsius”, “behind ears”, “sensor1234”, “±0.5”, respectively.
Different modeling and/or programming languages can be used to represent or specify sensor data 111 acquired from a sensor node 110 comprising a sensor type 111a and one or more sensor data attributes 112 in a computer or machine readable and processable format such as XML.
During a life-cycle of sensor data 111, the sensor data 111 is acquired from one or more sensor nodes 101, 102, 103, 104, 110, 120 of a WSN 100. The acquired data is routed or forwarded from the sensor nodes 101, 102, 103, 104 to at least one sink 110, 120, from there delivered (or transmitted) to a middleware 200, and finally delivered to one or more software applications 310, 320.
The process of delivery of sensor data s from an entity e to an entity f is noted as s|e→f.
Accordingly, sensor data 111 is delivered from a first entity to a second entity. The first entity may be a sensor node 101, 102, 103, 104 within a WSN 100 and the second entity a sink 110, 120 of the WSN 100. Alternatively, the first entity may be a sink 110, 120 and the second entity a middleware 200. Finally, the first entity may be a middleware 200 and the second entity a software application 310, 320. Hence, sensor data 111 is delivered between each of the system entities or components (WSN 100, middleware 200, software applications 310, 320) of a sensor data processing system during the sensor data's 111 life cycle as shown in
Sensor data processing or processing of sensor data 230 both at one or more sensor nodes 101, 102, 103, 104 of a WSN 100 and/or at a middleware 200 comprises sensor data fusion 234 and sensor data aggregation 232.
Sensor data fusion 234, as referenced above, may be a process of combining data or information to estimate or predict entity states such as states of a sensor node 101, 102, 103, 104, 110, 120 or a middleware 200. Sensor data fusion 232 comprises automatic (or automated) reasoning and/or statistical analysis (e.g. using inference rules and/or statistical analysis functions) about sensor data 111 which results in more abstract contextual information.
For example, fusion of sensor data 111 relating to a body temperature, a pulse, and a blood pressure acquired from corresponding one or more sensor nodes 101, 102, 103, 104, 110, 120 may result in contextual information such as a patient's health condition. Hence, sensor data fusion 234 implies a relationship between information and/or data involved in the fusion. For example, sensor data fusion of physiological data acquired from corresponding sensor devices for a patient is fused in order to determine an overall health status or health condition of the patient based on relationships among the acquired physiological data.
In one implementation, such a relationship is implemented in a computer system by automated inference rules and/or similarity. Sensor data fusion 234 involves automatic reasoning on a set or collection of sensor data 111 based on computer-implemented inference rules. The result or outcome of such automatic inferences on the sensor data 111 may be a single sensor data. At WSN 100 level, sensor data fusion using such inference rules for automatic reasoning enables to transmit a single sensor data 111 to a sink 110, 120 and/or a middleware 200 instead of a possibly large set of a collection of sensor data. At middleware 200 level, sensor data fusion 234 aims at delivering high level contextual information and/or data from a WSN 100 to a software application 310, 320. The high level contextual information may be inferred or computed depending on requirements of the receiving software application 310, 320. For example, a health care monitoring system with an appropriate software application 310, 320 for a rehabilitation center for heart disease patients requires complex contextual information which may be automatically inferred from different sensor data relating to a patient's heart rate and blood pressure through sensor data fusion.
Sensor data fusion either at WSN level 100 or at middleware level 200 is formally defined in definition 3 below:
Definition 3. (Sensor Data Fusion)
Let be a fusion function such that : (<si>)i=0n=sfused.
Accordingly, sensor data fusion is defined by a specific function, denoted , over a collection or a set of sensor data 111 acquired or collected from one or more sensor nodes 101, 102, 103, 104, 110, 120 which resulted in a single fused sensor data. The function may be any specific function corresponding to requirements of a particular WSN 100 and/or the requirements of a specific software application 310, 320 receiving the fused data which may be implemented as a computer program by a set of automatic inference rules using any known programming language (e.g. Prolog, CHR, Java, Haskell).
An example of sensor data fusion 234 of sensor data types 111a bodytemperature and pulse acquired from corresponding sensor nodes 101, 102 results in a sensor type 111a healthcondition having a sensor data attribute 112 value having the value “critical”:
Sensor Data Aggregation 232 either at WSN level 100 or at middleware level 200 may include, as referenced above, gathering information and/or data from different sources including sensor nodes 101, 102, 103, 104, 110, 120, a middleware 200, and/or sensor data fusion 234. At sensor nodes 101, 102, 103, 104, 110, 120 within a WSN, sensor data aggregation aims at reduction of resource consumption. Within a middleware 200, sensor data aggregation 200 provides one or more software applications 310, 320 with a single collection or set of sensor data 111 which may be of interest for the specific software application 310, 320.
Contrary to sensor data fusion 234, sensor data aggregation 232 does not imply any kind of relationship among aggregated sensor data. Sensor data aggregation 232 is formally defined as follows:
Definition 4. (Sensor Data Aggregation)
Let ⊕ be an aggregation function such as ⊕: (<si>)i=0n→<sj>j=0m.
Accordingly, sensor data aggregation 234 is defined by a specific function, denoted ⊕, over a collection or a set of sensor data 111 acquired or collected from one or more sensor nodes 101, 102, 103, 104, 110, 120 which resulted in a single aggregated sensor data. The function ⊕ may be any specific function corresponding to requirements of a particular WSN 100 and requirements of a specific software application 310, 320 receiving the aggregated data. Sensor data aggregation may be implemented as a computer program by a specific aggregation function using any known programming language (e.g. Prolog, CHR, Java, Haskell).
For example, sensor data aggregation of two different sensor data attributes 112 of sensor data type 111a bodytemperature and a sensor data attribute 112 of sensor data type 111a ambienttemperature is implemented by the aggregation function ⊕ as follows:
In order to support a trustworthy sensor data acquisition, sensor data delivery, sensor data aggregation, and sensor data fusion of sensor data 111 in a sensor data life-cycle as shown in
The trust model may be implemented by a finite set of inference rules for a logic which is able to deal with beliefs and uncertainty expressed in terms of probabilities.
Trust, as referenced above, may be specified or defined as the belief of an entity (e.g. a sensor node 101, 102, 103, 104, a sink 110, 120, a middleware 200, a software application 310, 320) in an observation of a given event. Such an event may be that a sensor node has measure a patient's body temperature of 38° C. or a pulse of 90. Trust is then evaluated or computed as the probability expectation that a given event would occur, i.e. that a given even is expected to be true or is probably true. Such a probability expectation may be expressed by a real number between 0 and 1 wherein a value closer to 1 is more trustworthy than a value closer to 0.
In one implementation, an automated inference system based on implementing a probabilistic logic or a logic of beliefs is implemented in each of the sensor data processing steps (i.e. sensor data acquisition 210, sensor data delivery 240, sensor data aggregation 232, and sensor data fusion 234) among each of the layers (i.e. the WSN 100, the middleware 200, the software applications 310, 320) of a sensor data life-cycle.
The following events or propositions are introduced for trust evaluation in a sensor data life-cycle:
Ps=“a given sensor data s is trustworthy enough to be used.”
Pa=“a given sensor data attribute a is trustworthy enough to be used.”
Pe=“a given entity e is trustworthy enough to use any sensor data coming from e.”
Sensor data 111 and its corresponding sensor data attributes 112 is exemplarily shown in
Trust evaluation of a proposition Px, wherein x may be a sensor data s, a sensor data attribute a, or an entity e as defined above is formally defined below in definition 5:
Definition 5. (Trust Evaluation)
Let e be an entity. Trust evaluation φ(Px,e) is e's expectation probability that Px is true where φ(Px,e) ε [0,1].
A proposition Px may be an event, e.g. that a pulse sensor has measured a pulse of 90 or that a blood sugar sensor has measured a value of 97.
According to definition 5, trust evaluation at an entity e 101-104, 110, 120, 200, 310, 320 in a sensor data life cycle according to
In the following, trust or trustworthiness evaluation of sensor data at the different processing steps 210, 220, 230, 240 of a sensor data life-cycle according to
Trustworthiness of sensor data acquisition 210 from sensor nodes 101, 102, 103, 104 in a WSN 100 is evaluated or computed according to formal definition 6 given below.
Definition 6. (Trusted Sensor Data Acquisition)
φ(Ps,e)=φacqu(φ(Pa
Accordingly, trust evaluation during sensor data acquisition 210 is determined by evaluating an acquisition trust value (ATV) of sensor data s acquired from an entity e, e.g. a sensor node 101, 102, 103, 104, which is formally denoted φ(Ps,e). In other words, the operator φ is applied to the proposition Ps (e.g. “pulse is 90” acquired from a sensor node 110) and the entity e (e.g. said sensor node 110) and evaluates e's expectation probability that Ps is true.
The acquisition trust value (ATV) (or φ(Ps,e)), i.e. trust or trustworthiness evaluation of sensor data s 111 acquired from one or more sensor nodes 101, 102, 103, 104 is determined or computed based on trust or trustworthiness in the sensor data's s 111 sensor data attributes ai 112. Furthermore, the impact of sensor data attributes ai 112 confidences or trustworthiness of the acquired sensor data s 111 is captured. To that effect, a notion of weight αi is introduced for each of the sensor data attributes ai 112 of the sensor data s 111. In other words, each of the evaluated trust values φ (Pa
The weighting values αi for the corresponding trust values φi of the sensor data attributes ai 112 enable, for example, to leverage (influence, affect, effect, manipulate, or force) impact of the origin or accuracy on the acquisition trust value (ATV) φ(Ps,e).
In other words, a trust value φi (or φi(Pa
For example, the following sensor data s 111 may be acquired from a sensor node 110:
= < bodytemperature,
The sensor node 110 may have a trust value φi=0.53 in the value attribute, a trust value φi=0.95 in the metric attribute, a trust value φi=0.83 in the typeofmeasurment attribute, a trust value φi=0.89 in the origin attribute, and a trust value φi=0.65 in the accuracy attribute. Furthermore, the value attribute and the accuracy attribute have a weighting value of α=0.8 whereas the metric, typeofmeasurement and origin attributes each have a weighting value α=0.5. When computing an acquisition trust value ATV for the acquired φ(Ps,e) by applying the φacqu to the above given values according to definition 6, the impact of the value and accuracy trust values on the ATV is enlarged due to their higher weighting values.
Trustworthiness of sensor data delivery 240 from a first entity f to a second entity e between the different layers according to
Definition 7. (Trusted Sensor Data Delivery)
φ(Ps|
Trustworthiness of sensor data delivery 240 is evaluated when transmitting or transporting sensor data 111 from sensor node 101, 102, 103, 104 to sink 110, 120, from sink 110, 120 to middleware 200, and from middleware 200 to application 310, 320 as shown in
For example, a sensor node f 110 has a trust value φ(Ps,f)=0.758 in sensor data s 111, e.g.
= < bodytemperature,
acquired from the sensor node f 110. Furthermore, a sink e 120 receiving the sensor data s 111 from the sensor node f 110 has a trust value φ(Pf,e)=0.83 in the sensor node f 110. To compute a corresponding delivery trust value (DTV) φ(Ps|
In other words, a trust value φ(Ps,f) an entity f has in sensor data s 111 is evaluated, for example according to definition 6 given above. Furthermore, a trust value φ(Pf,Pe) a receiving entity e has in the delivering entity f is determined. Based on these two trust values, a delivery trust value (DTV) φ(Ps|
Trustworthiness of sensor data aggregation 232 either at a sensor node 101, 102, 103, 104 in a WSN 100 or at middleware level 200 is evaluated or computed according to the following formal definition:
Definition 8. (Trusted Sensor Data Aggregation)
φ(p⊕(s
Accordingly, trust in aggregated sensor data s 111 is evaluated by determining an entity e's expectation probability that aggregated sensor data s 111 aggregated from one or more pieces of sensor data si is true.
Aggregation of sensor data si may include a collection or set of sensor data si without any modification or inference of the sensor si data being aggregated. When evaluating a trustworthiness in the aggregated sensor data s 111, the impact of each piece of sensor data si is captured in the aggregation. Furthermore, each trust value in each piece of sensor data si is weighted.
For example, a sensor node e 110 aggregating sensor data s1 to s3 corresponding to the below given pieces of sensor data, i.e. bodytemperature having value 38, bodytemperature having value 37, and ambient temperature having value 21, has the following trust values in this data: φ(Ps
A corresponding aggregation trust value (AgTV) φ(p⊕(s
In other words, trust values φ(Ps
Trustworthiness of sensor data fusion 234 either at a sensor node 101, 102, 103, 104 in a WSN 100 or at middleware level 200 is evaluated or computed according to the following formal definition:
Definition 9. (Trusted Sensor Data Fusion)
φ(p(s
Accordingly, trust in fused sensor data s 111 is evaluated by determining an entity e's expectation probability that fused sensor data s 111 fused from one or more pieces of sensor data si is true. When evaluating a trustworthiness in the fused sensor data s 111, the impact of each piece of sensor data si in the fusion is captured. Furthermore, each trust value in each piece of sensor data si is weighted.
For example, a sensor node e 110 fusing sensor data s1 and s2 corresponding to the below given pieces of sensor data, i.e. bodytemperature having value 41, pulse having value 180, has the following trust values in this data: φ(Ps
A corresponding fusion trust value (FTV) φ(p(s
In other words, trust values φ(Ps
With reference to
Subjective logic may include or refer to a logic-based framework based on Dempster-Schafer theory of evidence. More generally, (propositional) logics, probabilistic logics, logics of belief, subjective logic, or similar terminology, may include or refer to formalisms used to describe the truth values (i.e. true and false) of propositions in a computer system. A proposition may be any event and/or data occurring in a computer system such as whether a sensor node has received the event that a measured pulse is 90; i.e. “pulse is 90” is a proposition. Probabilistic logics (or probability logics) may aim at combining the capacity of probability theory to handle uncertainty within the capacity of deductive logic. Probabilistic logics may make traditional (propositional) logics truth tables redundant because the results they define are derived through probabilistic expressions instead. In particular, probabilistic logics may assign to each logical proposition a probabilistic truth value in the closed real interval between 0 and 1, i.e. [0,1] which can be computed by means of statistical or probabilistic analysis about the proposition (e.g. “pulse 90”=0.745 denotes a probability of 0.745 that the sensor data “pulse 90” acquired from a sensor node is true). Subjective logic may be a type of probabilistic logic that explicitly takes uncertainty and belief ownership into account in order to represent, model or analyze aspects in a computer system involving uncertainty and incomplete knowledge. Arguments in subjective logics may be opinions about proposition (e.g. an opinion about the truth of the sensor data “pulse 90” acquired from a sensor node in a WSN and or an opinion about the trustworthiness of the sensor node itself). Opinions may be expressed by 4-tuples on belief b, disbelief d, uncertainty u and atomicity a, each of the values being in the interval [0,1] of real numbers, wherein b+d+u=1. An implementation of a logic in a computer system may be realized by a set of inference rules according to the characteristics of the logic to be implemented which may be considered as a function from sets of logical formulae to formulae. Implementing a logic by a set of inference rules, a computer system may automatically reason (i.e. automatically derive or compute conclusions) about propositions made in the system in terms of inference rules.
In general, in subjective logic, opinions ω about propositions P are expressed and manipulated. An opinion ω is represented by a 4-tuple (b, d, u, a), wherein a represents a base rate or atomicity, i.e. the a priori probability in the absence of evidence. The values b, d, and u represent the belief that a specific proposition is true, the belief that the specific proposition is false (i.e. the disbelief that the specific proposition is true), and the uncertainty is the amount of uncommitted belief (i.e. the amount of belief that is not committed to the truth and falsehood of the specific proposition), respectively. The range of these four values b, d, u, and a is the closed interval between 0 and 1, denoted [0,1], i.e. any real number between 0 and 1 excluding 0 and 1 themselves, wherein b+d+u=1 holds. The opinion of an entity e about a proposition P is defined as ωPe=b+a.u. The framework of subjective logic provides a set of logical operators for combining (integrating, subsuming, joining, or relating) opinions ω such as conjunction, disjunction and negation in addition to non-traditional operators for consensus or discount of opinions. Subjective logic may be implemented in a computer by a set of corresponding inference rules which allow for automatic reasoning on opinions ω about propositions P.
Applying subjective logic and the notion of opinion to trust evaluation of sensor data 111 during sensor data processing in a sensor data life-cycle consist in determining an opinion ω in the following proposition: “a sensor data is trustworthy enough to be used”. Additionally, subjective logic allows for representing uncertainty with respect to sensor data measurement (e.g. quality of service, accuracy of a sensor node). Therefore, the framework of subjective logic is appropriate or suitable to represent for measuring uncertainty with respect to sensor data 111. Furthermore, sensor data processing benefits from subjective logic operators for combining (integrating, subsuming, joining, or relating) opinions ω on collected or acquired sensor data 111.
In one exemplary implementation of the trust model for trust evaluation of sensor data at each step of sensor data processing atomicity a is set to ½ since only binary state spaces for propositions P are considered.
Based on the above introduced trust model for trust evaluation of sensor data during a sensor data life-cycle (as defined in definitions 6 to 9) and capitalizing on subjective logic, trust evaluation of a sensor data attribute a 112 by an entity e (i.e. φ(Pa,e)) such as a sensor node 101, 102, 103, 104, 110, 120 is defined as ωae in one implementation. In other words, a trust value an entity e has in a sensor data attribute a 112 is computed by determining an opinion ωae, the entity e has in the trustworthiness of the attribute a 112. Similarly, trust evaluation of an entity f by an entity e (i.e. φ(Pf,e)) is defined as ωfe. In other words, the expectation probability or value of an entity e in the trustworthiness sensor data attribute a and another entity f, respectively is implemented by determining or evaluating opinions ω on sensor data attributes a 112 and entities e 110, 200, 310 according to subjective logic.
Such an implementation of a trust model for a sensor data life-cycle using subjective logic may have the advantage that uncertainty with respect to sensor data acquired from sensor nodes can be expressed such as uncertainty in the accuracy of a sensor node. Furthermore, specific operators of subjective logic can be used to combine opinions on sensor data which is aggregated or fused during sensor data processing 230 according to the applied aggregation and/or fusion functions. Hence, also for processed sensor data, uncertainty can be expressed in order to more precisely determine a trust value in the processed and routed sensor data, which is in particular necessary for sensitive data such as physiological data routed and processed in a sensor-based health care monitoring system.
In one implementation, trust values or opinions in sensor data attributes 112 and entities 101 -104, 110, 120200, 310, 320 of a sensor data processing system as shown in
In one example, subjective aspects of an opinion are based on past experiences with a given entity 101-104, 110, 120, 200, 310, 320 while measurable aspects are derived from elements or aspects characterizing sensor data attributes 112 and/or entities 101-104, 110, 120, 200, 310, 320. Some subjective and measurable aspects for opinion determination of sensor data attributes 112 and entities 101-104, 110, 120, 200, 310, 320 is shown below in table 1.
For example, as shown in table 1, on the one hand side reputation of a sensor node 101-104, 110, 120 can be considered as a subjective element or aspect of an origin sensor data attribute 112 of sensor data 111. On the other hand side, credential of an entity 101-104, 110, 120200, 310, 320 and its used communication protocol are measurable elements or aspects which support the determination of trustworthiness of an entity 101-104, 110, 120200, 310, 320.
In the definition of an opinion ω expressed by the 4-tuple (b, d, u, a) which is given below, s denotes a subjective aspect and m denotes a measurable aspect. In one example, the following combination is proposed in order to determine or evaluate an opinion ω based on those two parameters s and m.
Accordingly, belief b may be defined as a combination of subjective aspects s and measurable aspects m. Uncertainty u is defined as the opposite of measurable aspects (1−m) and disbelief d is defined as a combination of subjective aspects s and the opposite of measurable aspects (1−m). Based on this combination of subjective aspects s and measurable aspects m, trustworthiness in sensor data attributes 112 and entities 101-104, 110, 120200, 310, 320 are determined or evaluated.
Based on the above introduced trust model for trust evaluation of sensor data during a sensor data life-cycle and capitalizing on subjective logic, trust evaluation of a sensor data s 111 of an entity e 101-104, 110, 120200, 310, 320, i.e. φ(Ps,e) during sensor data acquisition 210 is defined as ωse in one implementation. An opinion of entity e 111 about sensor data s 101-104, 110, 120, 200, 310, 320 is then computed or evaluated by means of a combine operator. The combine operator computes ωse based on opinions on the sensor data's s 111 sensor data attributes ai 112 which are denoted by ωa
The combine operator extends the subjective logic framework. The combine operator is introduced to the subjective logic framework in order to implement trust evaluation of sensor data s 111 acquired from one or more sensor nodes 101, 102, 103, 104 as defined in definition 6. In particular, an acquisition trust value (ATV) (i.e. φ(Ps,e)) is computed by means on an operator φacqu which aims at combining opinions of a single entity (sensor node) e 101, 102, 103, 104 about different propositions Pa
ψ(Ps,e)=ψacquisition(ψ(Pa
ωsc=combine(ωa
ωse=combineα
Accordingly, an opinion of an entity e (e.g. a sensor node 101, 102, 103, 104) on sensor data s 111 is computed by combining opinions of the entity e on sensor data attributes ai 112 of the sensor data s 111 by considering an influence or impact of a weighing value αi corresponding to the sensor data attributes ai 112.
As described above, an opinion ω is specified by a 4-tuple (b, d, u, a) comprising belief b, disbelief d, uncertainty u, and atomicity a. Atomicity a is set to ½ of a given proposition trustworthiness. This 4-tuple is defined for ωse as follows:
The operator combineb is applied to each belief value of each attribute ai of sensor data s while considering corresponding weighting values. Hence, combineb aims at smoothly increasing belief of combined opinions. Uncertainty u is defined by means of an operator combineu applied to each belief value of each attribute ai of sensor data s while considering corresponding weighting values, wherein the minimum of the opposite of belief and the result of applying the combineu is determined. Hence, uncertainty u is defined in such manner that the influence of uncertainty on combination of opinion is minimized in comparison with belief. Additionally, the constraint b+d+u=1 of subjective logic is considered or respected. This constraint is then used to define disbelief d.
In a first step, the combineb operator is defined for two beliefs. Subsequently, it is extend to more than two beliefs. A combination of two beliefs be and bf consists of a smooth increase of their maximum, depending on the distance |be−bf|. This increase is to be exponentially proportional to their maximum belief and to their distance. The combineb operator has then to fulfill the following requirements:
RE1:
RE2: combineb(be,bf) is proportional to the distance |be−bf|.
RE3: combineb(be,bf) is exponentially proportional to max(be,bf).
With requirement RE1, the fact is expressed that the combination of two beliefs always results in an increase. In case of min(be, bf)=0, combineb(be, bf) is equal to the lower bound, i.e. max(be, bf). Furthermore, combineb(be, bf) is up to 1, i.e. its maximal value is 1.
RE2 reflects the fact that the closer the min(be, bf) is to max(be, bf), the bigger the combination acceleration has to be. In other words, the combineb operator tends to reward the combination of beliefs which are close to each other.
Finally, RE3 is to reward the combination of high beliefs be and bf. Hence, the combination of two beliefs 0.5 and 0.9 is preferred rather than 0.5 and 0.5, even if they are close to each other.
Based on RE1, RE2 and RE3, the combination between two beliefs be and bf is given below in definition 10:
Definition 10. (Belief Combination)
Let be and bf be agent's beliefs about two distinct propositions a and b. Let combineb(be, bf) be the belief such that:
combineb(be,bf)=min(1,max(be,bf)+ε(be,bf)) where ε(be,bf)=(be·bf)(2−b
Then, combineb(be, bf) is called the combination of beliefs be and bf representing an entity's 101-104, 110, 120, 200, 310, 320 belief about the combination of propositions a and b being true.
As far combination of more than two beliefs is considered, a combination of beliefs is defined as follows:
With respect to uncertainty combination, combined uncertainty is reduced or lowered by computing an average of uncertainty as follows:
Based on the above introduced trust model for trust evaluation of sensor data during a sensor data life-cycle and capitalizing on subjective logic, trust evaluation of an entity f 101-104, 110, 120, 200, 310, 320 of an entity e 101-104, 110, 120, 200, 310, 320, i.e. φ(Ps|
ψ(Ps|
ωs|
The discount operator perfectly fits, by definition, to compute ωs|
In order to determine trustworthiness of sensor data fusion 234, the combine operator is used in one implementation. As previously defined, the combine operator combines opinions of an entity e 101-104, 110, 120, 200, 310, 320 in a single opinion. In the case of fusion of data, opinions of a single entity e 101-104, 110, 120, 200, 310, 320 is combined on different propositions used to infer on a single proposition.
ψ(P(s
ω(s
ω(s
In one implementation, an average on opinion on sensor data 111 of sensor data aggregation 232 is computed. This average computation has to involve weight of aggregated sensor data, as expressed in the following definition of the average operator.
ψ(P⊕(s
ω⊕(s
The average operator is defined as follows:
In summary, a trust model for trust evaluation in each step 210, 230, 240 of a sensor data life-cycle as shown in
The BSN 100 may be a combination of any kind of wearable and/or implemental sensor devices and exemplary comprises a pulse sensor node 110 and a blood pressure sensor node 120, both having functionality of a sink.
The BSN 100 is connected to a Medical Emergency Response Center (MERC) 300 comprising appropriate response software 310 through a patient's PDA 200. The PDA 200 is in charge of detecting any kinds of irregularities in the patient's health condition and of aggregating physiological patient information. In one example, the PDA 200 can trigger an alert in case of emergency to the MERC software 310 that, in turn, contacts a physician close to the patient's home. Furthermore, the physician may also request for aggregation of physiological information for a better diagnostic.
In this context,
In
An implementation of trust evaluation using the mechanisms introduced above with reference to
In this use case, farmers aims at monitoring and detecting any diseases in his herd. Based on information such as milk temperature, body temperature or pulse history, the farmer or veterinarian can infer on health condition of the herd. Similar to the remote health care monitoring introduced in section 6.1, we then assess trustworthiness of physiological information, aggregation or fusion of information.
With reference to
The personal computer 420 may further include a hard disk drive 432 for reading from and writing to a hard disk (not shown), and an external disk drive 434 for reading from or writing to a removable disk 436. The removable disk may be a magnetic disk for a magnetic disk driver or an optical disk such as a CD ROM for an optical disk drive. The hard disk drive 432 and external disk drive 434 are connected to the system bus 426 by a hard disk drive interface 438 and an external disk drive interface 440, respectively. The drives and their associated computer-readable media provide nonvolatile storage of computer readable instructions, data structures, program modules and other data for the personal computer 420. The data structures may include relevant data of the implementation of the method for trustworthiness assessment of sensor data processing during a sensor data life-cycle, as described in more details below. The relevant data may be organized in a database, for example a relational or object database.
Although the exemplary environment described herein employs a hard disk (not shown) and an external (removable) disk 436, it should be appreciated by those skilled in the art that other types of computer readable media which can store data that is accessible by a computer, such as magnetic cassettes, flash memory cards, digital video disks, random access memories, read only memories, and the like, may also be used in the exemplary operating environment.
A number of program modules may be stored on the hard disk, external (removable) disk 436, ROM 430 or RAM 428, including an operating system (not shown), one or more application programs 444, other program modules (not shown), and program data 446. The application programs may include at least a part of the functionality as detailed in
A user may enter commands and information, as discussed below, into the personal computer 420 through input devices such as keyboard 448 and mouse 450. Other input devices (not shown) may include a microphone (or other sensors), joystick, game pad, scanner, or the like. These and other input devices may be connected to the processing unit 422 through a serial port interface 452 that is coupled to the system bus 426, or may be collected by other interfaces, such as a parallel port interface 454, game port or a universal serial bus (USB). Further, information may be printed using printer 456. The printer 456, and other parallel input/output devices may be connected to the processing unit 422 through parallel port interface 454. A monitor 458 or other type of display device is also connected to the system bus 426 via an interface, such as a video input/output 460. In addition to the monitor, computing environment 420 may include other peripheral output devices (not shown), such as speakers or other audible output.
The computing environment 420 may communicate with other electronic devices such as a computer, telephone (wired or wireless), personal digital assistant, television, or the like. To communicate, the computer environment 20 may operate in a networked environment using connections to one or more electronic devices.
When used in a LAN networking environment, the computing environment 420 may be connected to the LAN 464 through a network I/O 468. When used in a WAN networking environment, the computing environment 420 may include a modem 470 or other means for establishing communications over the WAN 466. The modem 470, which may be internal or external to computing environment 420, is connected to the system bus 426 via the serial port interface 452. In a networked environment, program modules depicted relative to the computing environment 420, or portions thereof, may be stored in a remote memory storage device resident on or accessible to remote computer 462. Furthermore other data relevant to the application of the insurance claim management evaluation method (described in more detail further below) may be resident on or accessible via the remote computer 462. The data may be stored for example in an object or a relation database. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the electronic devices may be used.
The above-described computing system is only one example of the type of computing system that may be used to implement the method for trustworthiness assessment of sensor data processing during a sensor data life-cycle.
Number | Date | Country | Kind |
---|---|---|---|
08 29 0188 | Feb 2008 | EP | regional |