With the non-local cloud-hosting model, the Monitor is a SaaS which processes ... may or may not be interaction among di
Appendix I - Group Activity Modelling and Description in GroupSense-L • Sensors = {s1 , s2 , ..., sn }, n ∈ N, where n ≥ 1 and each si is a tuples s =< sid, desc, attachedT o, loc, f > where sid is the unique identity of each sensor in the system, desc is a tag or short description for that particular sensor, attachedT o denotes where that sensor has been attached to, loc is location of sensor and f is the frequency that sensor produces sensor | "∨" | " " | "×" An LOP denotes a logical relationship between pairs of individuals and activities in a group as follows: – ∧: conjunction relationship means both takes place.[AND operator] – ∨: means one of two must happen [OR operator] ⊗ – : exclusive relationship means if one occurs, the other must not occur [XOR operator] – ×: wildcard operator, meaning any of the above three can be used.
3
•
TemporalOperator (TOP) = "b" | "s" | "m" | "d" | "o" | "f" Based on Allen’s interval algebra [2], we define the following operators capturing temporal relationships among activities as shown in Figure 1.
‘X b Y’ means X takes place before Y
X s Y’ means X starts Y
‘X m Y’ means X meets Y
‘X d Y’ means X during Y
‘X o Y means X overlaps with Y
‘X f Y’ means X finishes Y
Figure 1: Allen’s Algebra Operators For Temporal Relationship • TemporalOperatorValue (TOPV) = StateDuration "," StateDuration In some cases, in order to define temporal relations in a more expressive way, in the context of human behavior, we use StateDuration to represent the time period that specifies a precise temporal relationship between the operands of a temporal operator. First StateDuration denotes a lower boundary and the second one denotes the upper boundary. For instance, “x2 should take place with 5 to 10 seconds delay after x1 ” is denoted by (x1 )(b,5s,10s)(x2 ). If one of the boundaries are not known or can have any value, then ”X” (do not care symbol) is used. In the current prototype of GroupSense, spatial relationships have not been modelled since, in almost all GA scenarios, human-object interactions are based on time and (col-)location. Hence, modelling the time of events/actions (via the temporal operators) and the location of events/actions (via context conditions) would already cover a high proportion of GAs without needing spatial operators. • TemporalUnit = "sec" | "minute" | "hour" • Context = "direction" | "temperature" | "distance" | "speed" | "gravity" | "location"; • ContextUnit = "m" | "cm" | "deg" | "◦ C" | "m/s" | "m/s2" • StateDuration = Number, TemporalUnit | "X" // X means do not care • RequiredMinMaxDuration(RMMD) = "(" "RMMD:" StateDuration "," StateDuration ")" RequiredMinMaxDuration indicates the minimum or maximum required time for performing a group activity. For example, we might want to say that “being in meeting” is a group activity only when the participants in that meeting sit at least 10 minutes. This is similar to TOPV but TOPV is applied for any temporal relationship in a Group Activity expression, while RMMD describes the required duration of the ga as a whole. • RequiredMinMaxParticipants(RMMP) = "(" "RMMP:" Number "," Number ")" RequiredMinMaxParticipant indicates the minimum and maximum number of required participants for a group activity. • Logical Temporal Relationship (LTR) = LOP | TOP ["," TOPV] LTR is for temporal or logical relationships between expressions. As can be
4
seen, TOPV is an optional nonterminal symbol as all temporal operators do not have to be followed by TOPV. For example, to simply say “moving a ladder by i1 needs to be perfomed bef ore picking cherry by x2 ”, we do not need to use TOPV. • Contextual Operator (COP) = "" | "=" | "̸=" | ">" | "6" | "↔" | "=" | "≈" | "≈" which determines relationships among context information. For example, in watching a movie together, the locations of participants must be in a cinema or in walking together all the participants must walk in a similar direction. The operators “↔”, “=” and “≈” denotes in range, out of range and approximate values respectively. The relative operator (“≈