next up previous contents
Next: Experimental Results Up: No Title Previous: Software

Subsections

   
DBN models

The network models built for ambulation monitoring were developed incrementally. The earlier models aimed to recognise normal walking gait patterns and test the feature extraction system. Later models added features for providing beliefs in ambulatory stability and fall events.

    
Support-1a DBN

The following `support' DBNs represent development models built to recognise stages of the gait cycle. These were later incorporated into more complex models for producing `higher level' beliefs in the state of ambulation.

The `support-1a' DBN model's primary purpose was to test the DBN engine and feature extraction configurations with the Vermahide pressure sensor signals. The structure of this network can be represented by the two slices in Figure 8.1.

All the support DBN models used `up' and `down' events extracted from the Vermahide pressure transducers to produce beliefs in the body's current mode of support. The mode of support, or support state, was determined by which foot was on the ground and providing support to the body, taking one of the four states: `left', `right', `double' or `none'. A `left' state signified standing on the left foot only, `right' for right foot only, and `double' for double-support (both feet on the ground). The state `none' was used to represent the situation where the subject had no feet on the ground, which may occur when the subject has fallen, is lying down, or sitting with feet off the ground. The CPTs for the support networks were configured to reflect the sequence of support states expected for a normal walking gait cycle (Section 2.1.1): ``double, left, double, right, double, left...''

Structure

The support-1a model used only three nodes per slice - a world state node `Support', an event node `Action' and an observation node `ActObs' (see Figure 3.3). Evidence extracted from the pressure signals was entered into `ActObs' which contained a sensor model for the `Action' event. The states of the `Action' and `ActObs' nodes were `lup', `ldowm', `rup' and `rdown' representing the left foot up, left foot down, right foot up and right foot down events respectively.

As well as storing the network's belief in the current mode of support, the `Support' node also contained the DBN's state transition model, using the `Action' and `Support' beliefs from the previous slice to determine the logical next mode of support. For example, if support in the previous slice takes on the `left' state, and the previous slice's action tended towards `rdown', the support node in the current slice should favour its `double' state, or $\emph{P}(Support_{N+1}=double\vert Support_{N}=left,Action_{N}=rdown)\approx{}1.0$.

Entering evidence into the `ActObs' node causes the DBN to expand one slice so the next support and action states can be established.


  
Figure 8.1: The gait-1 network structure
\includegraphics[width=100mm]{figures/support-1.eps}

The `Action' node used the `Support' and `ActObs' nodes of the current slice to determine the next likely action, which will in turn influenced the `Support' state of the next slice. For example, if the current slice's support is `left' then the right foot must be off the ground. For a walking gait (Section 2.1.1), the next expected support state would be `double', so the CPT for the `Action' node favours the `rdown' state, or $\emph{P}(Action_{N}=rdown\vert Support_{N}=left)\approx{}1.0$.

Parameters

The conditional probability distributions for the support-1a network were selected using a policy of `100% certainty'; conditioning states that were logical resulted in conditional probability vectors consisting of 1.0 for the appropriate state and zero for all others. Physically impossible conditioning states8.1 resulted in an evenly distributed probability vector (all states receive the same probability). This is shown in the CPTs for the Support node (Table 8.1) and Action node (Table 8.2).


 
Table 8.1: Conditional probability table for the support-1a DBN's Support node
Conditioning states $\emph{P}(Support_{N+1}\vert Action_N,Support_N)$
ActionN SupportN left right double none
lup left 0 0 0 1
lup right 0.25 0.25 0.25 0.25
lup double 0 1 0 0
lup none 0.25 0.25 0.25 0.25
ldown left 0.25 0.25 0.25 0.25
ldown right 0 0 1 0
ldown double 0.25 0.25 0.25 0.25
ldown none 1 0 0 0
rup left 0.25 0.25 0.25 0.25
rup right 0 0 0 1
rup double 1 0 0 0
rup none 0.25 0.25 0.25 0.25
rdown left 0 0 1 0
rdown right 0.25 0.25 0.25 0.25
rdown double 0.25 0.25 0.25 0.25
rdown none 0 1 0 0
 

The prior distribution for the Support node in the first slice of the DBN was an even distribution over all possible support states, as shown in equation 8.1.


 \begin{displaymath}
\emph{P}(Support=A\{left,right,double,none\}) = 0.25 \\
\end{displaymath} (8.1)

Table 8.2 shows the CPT for the `Action' node, which reflects the next expected foot action given the current slice's mode of support.


 
Table 8.2: Conditional probability table for the support-1a DBN's Action node
Conditioning states $\emph{P}(Action_{N+1}\vert Support_{N+1})$
SupportN+1 lup ldown rup rdown
left 0.5 0 0 0.5
right 0 0.5 0.5 0
double 0.5 0 0.5 0
none 0 0.5 0 0.5
 

The sensor model for this network assumed that the evidence from the feature extraction was correct 97% of the time, with the remaining 3% evenly distributed over the other states. The entire CPT for the node `ActObs' can therefore be expressed using equations 8.2 and 8.3.


  
$\displaystyle \emph{P}(ActObs_{N}=A\vert Action_{N}=A)$ = 0.97 (8.2)
$\displaystyle \emph{P}(ActObs_{N}=A\vert Action_{N} \neq A)$ = 0.01 (8.3)

   
Feature extraction

The feature extraction for all the support networks consisted of two stages: firstly the left/right, heel/toe Vermahide sensor pressure signals were transformed into left/right heel/toe up/down signals by way of a thresholding filter. After some investigation of the raw pressure signals, 10 millivolts was chosen to be a crossover point - a signal rising past 10mV represents increasing pressure, so a `down' was generated. Likewise, a signal falling past 10mV was construed as pressure being removed from the sensor, resulting in the generation of an `up' signal. When four pressure sensors were used with this network (left-toe, left-heel, right-toe and right-heel), eight distinct up and down signals could be produced.

The second stage of filtering combines the left/right heel/toe up/down signals to produce up/down signals for the left and right feet. A heel down signal by itself was taken as a foot down event (see below), and a heel and toe up event within 0.5 seconds of each other was converted into foot up evidence.

An initial configuration triggered a left/right foot down event only after the heel and toe of that foot had signalled `down' by rising past 10mV. This resulted in the network giving unexpectedly frequent and high beliefs of SupportN=none. Analysis of the pressure signals showed that for normal walking, the toe lifts off the ground after the opposite heel strike occurs, so this filter configuration would signal a `left up' before a `right down'. This problem was overcome by signalling a foot as being down only when the heel strikes8.2. The left/right foot up signals were generated after both the heel and toe's pressure signals dropped below 10mV. This avoided confusion due to `noise' or the toe lifting off the ground before the heel.

The following is the feature extraction configuration from the support-1a DBN model. Figure 8.2 shows a graphical representation of the filter and evidence nodes involved in extracting left foot up and down signals.

# smooth signal
[LHEEL] > {abs} > {average 5} > [LHRAW];
[LTOE] > {abs} > {average 5} > [LTRAW];
[RHEEL] > {abs} > {average 5} > [RHRAW];
[RTOE] > {abs} > {average 5} > [RTRAW];
# detect signal pass
[LHRAW] > {pass 0.01 r} > [LHDOWN];  # rising past 10mV:  heel down
[LHRAW] > {pass 0.01 f} > [LHUP];    # falling past 10mV: hell up
[LTRAW] > {pass 0.01 r} > [LTDOWN];  # rising past 10mV:  toe down
[LTRAW] > {pass 0.01 f} > [LTUP];    # falling past 10mV: toe up
[RHRAW] > {pass 0.01 r} > [RHDOWN];
[RHRAW] > {pass 0.01 f} > [RHUP];
[RTRAW] > {pass 0.01 r} > [RTDOWN];
[RTRAW] > {pass 0.01 f} > [RTUP];
# Evidence entry
[LHDOWN] > {*any ActObs ldown}; # ActObs = ldown
[RHDOWN] > {*any ActObs rdown}; # ActObs = rdown
# Confirm foot up by waiting for heel AND toe up
[LHUP] > {and LTUP 0.5} > {*any ActObs lup}; # ActObs = lup
[RHUP] > {and RTUP 0.5} > {*any ActObs rup}; # ActObs = rup


  
Figure 8.2: Graphical representation of left foot up/down feature extraction configuration used in support networks.
\includegraphics[width=140mm]{figures/vpt-filter.eps}

For a detailed description of feature extraction system syntax see Chapter A.1.3.

   
Support-1b DBN

Trials on the Support-1a DBN model with normal walking data showed it recognised the walking gait cycle with high certainty. However, if the feature extraction produced incorrect signals (due to noise or strange sensor behaviour), the 100% certainty policy of the support-1a model's CPT resulted in the network becoming easily `confused'. After one or two irregular evidence entries (such as may occur when the subject starts or stops ambulating), the network tended to produce illogical conclusions from subsequent evidence. Even if the evidence entered was consistent with normal walking, the `all-or-nothing' conditional probability distributions seemed to prevent the support-1a network recovering by using new evidence to conclude that a previous observation was incorrect (this is the main purpose of the sensor model).

In an attempt to fix this problem a second support-recognition network, `support-1b' was built, using exactly the same feature extraction and structure as support-1a, but with some uncertainty introduced into its CPTs. The `softened' CPTs for the support-1b network are shown in tables 8.3 and 8.4.

Parameters

Table 8.3 shows the softened CPT for the `Support' node. All entries previously given a conditional probability of 0.0 were increased to 0.01, and the `correct' state's probability reduced accordingly. State probability vectors for illogical conditioning states were left as even distributions.


 
Table 8.3: Conditional probability table for the support-1b networks's Support node
Conditioning states $\emph{P}(Support_{N+1}\vert Action_N,Support_N)$
ActionN SupportN left right double none
lup left 0.01 0.01 0.01 0.97
lup right 0.25 0.25 0.25 0.25
lup double 0.01 0.97 0.01 0.01
lup none 0.25 0.25 0.25 0.25
ldown left 0.25 0.25 0.25 0.25
ldown right 0.01 0.01 0.97 0.01
ldown double 0.25 0.25 0.25 0.25
ldown none 0.97 0.01 0.01 0.01
rup left 0.25 0.25 0.25 0.25
rup right 0.01 0.01 0.01 0.97
rup double 0.97 0.01 0.01 0.01
rup none 0.25 0.25 0.25 0.25
rdown left 0.01 0.01 0.97 0.01
rdown right 0.25 0.25 0.25 0.25
rdown double 0.25 0.25 0.25 0.25
rdown none 0.01 0.97 0.01 0.01
 

Table 8.4 shows the `softened' CPT for the `Action' node, which was updated in the same way the Support CPT.


 
Table 8.4: Conditional probability table for the support-1b networks's Action node
Conditioning states $\emph{P}(Action_{N+1}\vert Support_{N+1})$
SupportN+1 lup ldown rup rdown
left 0.18 0.01 0.01 0.8
right 0.01 0.8 0.18 0.01
double 0.49 0.01 0.49 0.01
none 0.01 0.49 0.01 0.49
 

As the sensor model (CPT for node ActObs) was already `softened' to handle incorrect evidence, this relation remained as specified by equations 8.2 and 8.3.

   
Support-1c DBN

This network added the state `none' to the the Action and ActObs nodes used in the support-1b network. The purpose of this state was to allow investigation into handling of missing data through expanding the network twice per per evidence entry (Section 9.5). The `none' state was required when data wasn't missing in the extra interleaved slices, so the Action could take on `none' and the mode of support was maintained for the next slice.

Parameters

The network's structure remained unchanged, but the support node CPT required updating to handle the new `none' state, as shown in Table 8.5. The conditioning states containing ActionN=none are of particular interest, as they encode the logic for maintaining the current Support state when no action occurred.


 
Table 8.5: CPT for the support-1c networks's Support node
Conditioning states $\emph{P}(Support_{N+1}\vert Action_N,Support_N)$
ActionN SupportN left right double none
lup left 0.01 0.01 0.01 0.97
lup right 0.25 0.25 0.25 0.25
lup double 0.01 0.97 0.01 0.01
lup none 0.25 0.25 0.25 0.25
ldown left 0.25 0.25 0.25 0.25
ldown right 0.01 0.01 0.97 0.01
ldown double 0.25 0.25 0.25 0.25
ldown none 0.97 0.01 0.01 0.01
rup left 0.25 0.25 0.25 0.25
rup right 0.01 0.01 0.01 0.97
rup double 0.97 0.01 0.01 0.01
rup none 0.25 0.25 0.25 0.25
rdown left 0.01 0.01 0.97 0.01
rdown right 0.25 0.25 0.25 0.25
rdown double 0.25 0.25 0.25 0.25
rdown none 0.01 0.97 0.01 0.01
none left 0.97 0.01 0.01 0.01
none right 0.01 0.97 0.01 0.01
none double 0.01 0.01 0.97 0.01
none none 0.01 0.01 0.01 0.97
 

   
Support-2 DBN

The support-2 DBN was a further development on the basic gait-recognition models. The primary difference was the reversal of the temporal causal link between the Action node and the Support node in the following slice, resulting in a structure identical to general DBN model shown in Figure 3.3. This adjustment effectively encodes the relationship: ``a change in support causes an action'', as opposed to: ``the previous support and action result the next support'' which was used in the support-1 networks.

Structure

The reversal of the causal link between the Support and Action nodes was performed so the effects of backwards causal links and causal link direction on the network's response could be investigated.


  
Figure 8.3: Support-2 DBN structure
\includegraphics[width=100mm]{figures/support-2.eps}

   
Parameters

The size of the CPT for the Support node shown in Table 8.6 is significantly reduced as it now only has one parent (the Support node from the previous slice). From the low beliefs in the `none' Support state, it can be seen that this network still expects left and right supports with intervening double support, as occurs in normal walking. This CPT could be updated to handle running or jogging by reversing the probabilities for `double' and `none' for previous support conditions of left and right. The probability distribution for $\emph{P}(Support_{N+1}\vert Support_N=double)$ (fifth line in Table 8.6) shows that after a `double' support the network expects either a `left' or `right' support with even probability (see Section 8.5).


 
Table 8.6: Support-2 network's Support node CPT
Conditioning states $\emph{P}(Support_{N+1}\vert Support_N)$
SupportN left right double none
left 0.01 0.01 0.9 0.08
right 0.01 0.01 0.9 0.08
double 0.49 0.49 0.01 0.01
none 0.49 0.49 0.01 0.01
 

The Action node's CPT (Table 8.7) has increased in size due to the addition of the backwards causal link from the Support node in the next slice.


 
Table 8.7: Support-2 network's Action node CPT
Conditioning states $\emph{P}(Action_N\vert Support_N,Support_{N+1})$
SupportN SupportN+1 lup ldown rup rdown
left left 0.25 0.25 0.25 0.25
left right 0.25 0.25 0.25 0.25
left double 0.01 0.01 0.01 0.97
left none 0.97 0.01 0.01 0.01
right left 0.25 0.25 0.25 0.25
right right 0.25 0.25 0.25 0.25
right double 0.01 0.97 0.01 0.01
right none 0.01 0.01 0.97 0.01
double left 0.01 0.01 0.97 0.01
double right 0.97 0.01 0.01 0.01
double double 0.25 0.25 0.25 0.25
double none 0.25 0.25 0.25 0.25
none left 0.01 0.97 0.01 0.01
none right 0.01 0.01 0.01 0.97
none double 0.25 0.25 0.25 0.25
none none 0.25 0.25 0.25 0.25
 

The sensor model for Support-2 (CPT for ActObs) was identical to those used in the other Support networks.

   
Support-3 DBN

The Support-3 model further expanded the support recognition models to improve prediction and recognition. It was realised that the double support state introduced uncertainty into the previous models; if the previous state was a double support, and in the absence of any action observation (i.e. in prediction slices), the left and right support states were equi-probable (see Section 8.4.2). If the current slice knew the support states of the previous two slices, it could make a better prediction regarding the next support8.3 - for example given the last two supports were left and double, the network could give a higher probability to a resulting right rather than left support. This was achieved through the addition of a `forwarding node' called `PrevSupport', as shown in Figure 8.4. This used the conditional probability distribution given by Equations 8.4 which effectively forwarded exact copies of the support node probability distribution two slices ahead.

Structure


  
Figure 8.4: Support-3 network structure, showing additional PrevSupport support state forwarding node
\includegraphics[width=100mm]{figures/support-3.eps}

Due to the new structure shown in Figure 8.4, if the network was provided with enough evidence to establish a sequence of two support states from a gait cycle (such as left followed by double), following slices were able to interpolate subsequent support and action states, according to the gait cycle, without the need for new evidence. This behaviour is particularly useful for prediction. If the gait cycle finishes or changes, the network updates its predictions accordingly, and can reestablish a prediction sequence as new evidence arrives.

Figure 8.5 shows six slices of the support-3 network where the first two slices have received the evidence `rup' and `rdown' enabling the network to predict the following support states (double, right and double) and associated actions. However, it was noted that the certainty starts decay towards the sixth slice.


  
Figure 8.5: Example of support-3 network prediction given right-foot-up and right-foot-down evidence in first two slices.
\includegraphics[width=140mm]{figures/support-3-slices.eps}

Parameters

Besides the Support and new PrevSupport nodes, the conditional probability distributions of the Support-3 network were identical to previous support networks. The PrevSupport relationship simply takes on the same values as the previous slice's support node with 100% certainty, so it's CPT can be expressed by equation 8.4.


 
$\displaystyle \emph{P}(PrevSupport_{N+1}=A\vert Support_N=A)$ = 1.0 (8.4)
% latex2html id marker 7003
$\displaystyle \therefore
\emph{P}(PrevSupport_{N+1}\neq{}A\vert Support_{N}=A)$ = $\displaystyle 0.0~\forall{}~A$  

   
Stumble-1 DBN

The first of the networks incorporating fall detection, the stumble-1 network built on the basic structure of the Support networks by adding `Status' and `Interval' nodes. The primary aim of this network was to produce a belief in the subject stumbling or tripping using the support state and time intervals between footsteps.

Structure

The new status node was binary and could take on the states `ok' or `stumble'8.4. This node used the current support, the previous status belief and the interval between footfalls to determine the overall state of ambulation. The stumble-1 network still expected to be processing walking data, and as such it's CPTs reflected sequences of left and right support states interleaved with double supports. The `none' support state contributed to the belief in a `stumble'. Small intervals between steps were also considered contributory to the `stumble' state, as these would be expected to result from a quick corrective step during a stumble event.

The interval nodes, `Interval' and `IntervalObs' had the states `small' and `large', and were used represent the time interval between successive foot-strikes. A `small' interval state was used to signify the time between footsteps being smaller than expected for a normal walking pattern. Conversely, a `large' interval represented a larger foot-strike to foot-strike time, which encouraged the belief in the subject's `ok' state. The interval used by the feature extraction system to instantiate the `small' or `large' states in the IntervalObs node was reckoned to be 0.5 seconds. This value was established through analysis of normal walking recordings, and is slightly lower than the interval used by McGowan [4], although it can be easily calibrated to suit different individuals8.5. The interval evidence was only added when a footstep occurred, so the stumble-1 network did not recognise states such as standing still or sitting down.


  
Figure 8.6: stumble-1 network structure
\includegraphics[width=100mm]{figures/stumble-1.eps}

Feature extraction

As a new observation node (IntervalObs) was added to the network, the feature extraction configuration had to be updated to include extraction of intervals. This was accomplished by adding the following configuration commands to those used in the support networks (Section 8.1.3).

[E_LDOWN] > {or E_RDOWN} > {interval} > [DT_FOOTDOWN];
[E_LUP] > {or E_RUP} > {interval} > [DT_FOOTUP];
# enter evidence into IntervalObs node:
[DT_FOOTDOWN] > {or DT_FOOTUP} > {*quantise IntervalObs small 0.5 large};

The interval function was used here to determine time between foot-up and foot-down events (which are still entered into the ActObs node). These intervals are combined through the or function and fed into the *quantise evidence extractor, which is configured to instantiate the IntervalObs node to its `small' state if the interval is less than 0.5 seconds or `large' otherwise.

Parameters

As the only causal link between the new and support network nodes was directed from the Support to Status node, the CPTs for the nodes Support, Action and Actobs remained unchanged.

The CPT for the new status node is shown in Table 8.8. As shown in Table 8.8, `small' interval states produced higher stumble probabilities, and long intervals favoured the `ok' state. The mode of support also effected the status node; double support was considered most stable and left or right single support slightly less stable. As this network was designed to process walking (not running) gait cycles, a support state of `none' was considered unstable.


 
Table 8.8: CPT for the stumble-1 network's Status node
Conditioning states P(StatusN+1|
      IntervalN,StatusN,
      SupportN+1)
IntervalN StatusN SupportN+1 ok stumble
large ok left 0.98 0.02
large ok right 0.98 0.02
large ok double 0.99 0.01
large ok none 0.7 0.3
large stumble left 0.7 0.3
large stumble right 0.7 0.3
large stumble double 0.8 0.2
large stumble none 0.4 0.6
small ok left 0.3 0.7
small ok right 0.3 0.7
small ok double 0.4 0.6
small ok none 0.2 0.8
small stumble left 0.1 0.9
small stumble right 0.1 0.9
small stumble double 0.3 0.7
small stumble none 0.05 0.95
 

The Interval evidence was expected to be correct 95% of the time, so the network's interval sensor model can be represented by equation 8.5.


 
$\displaystyle \emph{P}(IntervalObs=A\vert Interval=A)$ = 0.95 (8.5)
% latex2html id marker 7107
$\displaystyle \therefore \emph{P}(IntervalObs\neq{}A\vert Interval=A)$ = $\displaystyle 0.25~\forall{}~A$  

The CPT for the first status node assumes the subject usually starts in a stable state (Table 8.9).


 
Table 8.9: Conditional probability table for stumble-1 network's first-slice status node
Conditioning states $\emph{P}(Status_N\vert Support_N)$
SupportN ok stumble
left 0.98 0.02
right 0.98 0.02
double 0.99 0.01
none 0.8 0.2
 

   
Stumble-2 DBN

Results from the stumble-1 network (Section 9.3.5) showed that the status distribution quickly became uncertain8.6 due to decaying certainties in the interval and support states. The Stumble-2 network was designed to counter this effect.

Structure

The stumble-2 network combined the stumble detection of stumble-1 (Section 8.6) and the second-order design of the support-3 network (Section 8.5, with the further addition of a temporal causal link between successive interval nodes. Through the incorporation of the support-3 network, the support beliefs tended to have higher certainty, and the addition of the link between interval nodes attempted to achieve the same result for interval beliefs.


  
Figure 8.7: Stumble-2 network structure
\includegraphics[width=110mm]{figures/stumble-2.eps}

Parameters

As was the case for the stumble-1 network, incorporating the support-3 network doesn't require any changes to its CPTs as all its nodes retained the same set of parents. The main parameter difference between this network and the support-3 and stumble-1 networks is the state-evolution model contained within the Interval node. The current interval was expected to be the same as the previous with 95% certainty, so the Interval CPT can be specified by Equation 8.6.


 
$\displaystyle \emph{P}(Interval_{N+1}=A\vert Interval_{N}=A)$ = 0.95 (8.6)
% latex2html id marker 7130
$\displaystyle \therefore \emph{P}(Interval_{N+1}\neq{}A\vert Interval_{N}=A)$ = $\displaystyle 0.25~\forall{}~A$  

   
Stumble-3 DBN

The stumble-3 model was the last model implemented, which expanded on support-2 and also included some higher-level recognition of the mode of ambulation. The `Mode' node could take on the states `stop', `walk', `run', `stumble' and `fall', which represented the modes of ambulation the network aimed to detect through observation of intervals, supports states and previous modes.

Structure

As shown in Figure 8.8, the only structural differences to the stumble-2 network (Figure 8.7) was the replacement of the `Status' node with `Mode', and the causal link directed from the `Mode' to `Support' node. This link reflected the causal relationship that the current ambulation mode has on the sequence of supports (see Parameters below).


  
Figure 8.8: Stumble-3 network structure
\includegraphics[width=100mm]{figures/stumble-3.eps}

Parameters

As the support node had Mode added as a parent, its CPT changed considerably from previous networks. This causal link was used by the support node to influence its belief in the mode of support with respect to the current mode of ambulation.

For example, if the current `Mode' was `run, the support node would expect a sequence of `left' and `right' states separated by `none' support states. Conversely if Mode was `walking', the support node would expect this separating state to be `double'. As shown in Tables 8.10 and 8.11, Fall modes were modelled by increased conditional probability of a `none' support state, stumble modes resulted in probabilities similar to walking, but with increased emphasis on no support, and the stop mode expected sustained double support using the timeout interval.


 
Table 8.10: First half of CPT for the stumble-3 DBN's Support node.
Conditioning states P(SupportN+1|
      ModeN+1,PrevSupportN,SupportN)
ModeN+1 PrevSupportN SupportN left right double none
stop left left 0.5 0.09 0.4 0.01
stop left right 0.3 0.3 0.39 0.01
stop left double 0.08 0.01 0.9 0.01
stop left none 0.3 0.1 0.3 0.3
stop right left 0.3 0.3 0.39 0.01
stop right right 0.09 0.5 0.4 0.01
stop right double 0.01 0.08 0.9 0.01
stop right none 0.1 0.3 0.3 0.3
stop double left 0.3 0.2 0.3 0.2
stop double right 0.2 0.3 0.3 0.2
stop double double 0.02 0.02 0.95 0.01
stop double none 0.025 0.025 0.85 0.1
stop none left 0.2 0.2 0.3 0.3
stop none right 0.2 0.2 0.3 0.3
stop none double 0.1 0.1 0.6 0.2
stop none none 0.33 0.33 0.33 0.01
walk left left 0.2 0.09 0.7 0.01
walk left right 0.33 0.33 0.33 0.01
walk left double 0.01 0.97 0.01 0.01
walk left none 0.07 0.9 0.01 0.02
walk right left 0.33 0.33 0.33 0.01
walk right right 0.09 0.2 0.7 0.01
walk right double 0.97 0.01 0.01 0.01
walk right none 0.9 0.07 0.01 0.02
walk double left 0.01 0.01 0.97 0.01
walk double right 0.01 0.01 0.97 0.01
walk double double 0.4 0.4 0.19 0.01
walk double none 0.33 0.33 0.33 0.01
walk none left 0.33 0.33 0.33 0.01
walk none right 0.33 0.33 0.33 0.01
walk none double 0.33 0.33 0.33 0.01
walk none none 0.33 0.33 0.33 0.01
run left left 0.3 0.2 0.25 0.25
run left right 0.3 0.2 0.25 0.25
run left double 0.3 0.2 0.3 0.2
run left none 0.01 0.97 0.01 0.01
run right left 0.2 0.3 0.25 0.25
run right right 0.2 0.3 0.25 0.25
run right double 0.2 0.3 0.3 0.2
run right none 0.97 0.01 0.01 0.01
run double left 0.3 0.3 0.2 0.2
run double right 0.3 0.3 0.2 0.2
run double double 0.2 0.2 0.3 0.3
run double none 0.2 0.2 0.3 0.3
run none left 0.01 0.01 0.01 0.97
run none right 0.01 0.01 0.01 0.97
run none double 0.25 0.25 0.25 0.25
run none none 0.3 0.3 0.1 0.3
 


 
Table 8.11: Second half of CPT for the stumble-3 DBN's Support node, reflecting the effect of ambulation mode on support sequence.
Conditioning states P(SupportN+1|
      ModeN+1,PrevSupportN,SupportN)
ModeN+1 PrevSupportN SupportN left right double none
stumble left left 0.2 0.01 0.7 0.09
stumble left right 0.25 0.25 0.25 0.25
stumble left double 0.01 0.97 0.01 0.01
stumble left none 0.01 0.9 0.01 0.08
stumble right left 0.25 0.25 0.25 0.25
stumble right right 0.01 0.2 0.7 0.09
stumble right double 0.97 0.01 0.01 0.01
stumble right none 0.9 0.01 0.01 0.08
stumble double left 0.01 0.01 0.97 0.01
stumble double right 0.01 0.01 0.97 0.01
stumble double double 0.4 0.4 0.19 0.01
stumble double none 0.25 0.25 0.25 0.25
stumble none left 0.01 0.01 0.08 0.9
stumble none right 0.01 0.01 0.08 0.9
stumble none double 0.25 0.25 0.25 0.25
stumble none none 0.25 0.25 0.25 0.25
fall left left 0.06 0.03 0.01 0.9
fall left right 0.045 0.045 0.01 0.9
fall left double 0.01 0.05 0.04 0.9
fall left none 0.01 0.01 0.01 0.97
fall right left 0.045 0.045 0.01 0.9
fall right right 0.03 0.06 0.01 0.9
fall right double 0.05 0.01 0.04 0.9
fall right none 0.01 0.01 0.01 0.97
fall double left 0.01 0.01 0.02 0.96
fall double right 0.01 0.01 0.02 0.96
fall double double 0.01 0.01 0.02 0.96
fall double none 0.01 0.01 0.01 0.97
fall none left 0.01 0.01 0.01 0.97
fall none right 0.01 0.01 0.01 0.97
fall none double 0.01 0.01 0.01 0.97
fall none none 0.01 0.01 0.01 0.97
 

To enable detection of the `stop' mode, the Interval node was updated to include a `timeout' state. Using the feature extraction system, if no foot events were recorded for 900 milliseconds, the IntervalObs node was instantiated to `timeout' and the Action node to `none' (see feature extraction section below). The Mode node's CPT is shown in Table 8.12.


 
Table 8.12: CPT for stumble-3 DBN's `Mode' node.
Conditioning states $\emph{P}(Mode_1\vert Interval_0,Mode_0)$
Interval0 Mode0 stop walk run stumble fall
short stop 0.04 0.04 0.5 0.4 0.02
short walk 0.01 0.05 0.6 0.3 0.04
short run 0.01 0.01 0.8 0.17 0.01
short stumble 0.01 0.01 0.17 0.8 0.01
short fall 0.01 0.01 0.2 0.68 0.1
long stop 0.07 0.9 0.01 0.01 0.01
long walk 0.01 0.96 0.01 0.01 0.01
long run 0.01 0.9 0.07 0.01 0.01
long stumble 0.01 0.9 0.01 0.07 0.01
long fall 0.01 0.5 0.01 0.08 0.4
timeout stop 0.9 0.01 0.01 0.01 0.07
timeout walk 0.8 0.01 0.01 0.01 0.17
timeout run 0.6 0.01 0.01 0.01 0.37
timeout stumble 0.4 0.01 0.01 0.01 0.57
timeout fall 0.1 0.01 0.01 0.01 0.87
 

Feature extraction

The addition of a `timeout' state to the `Interval' node required that the interval evidence extraction be updated as follows:

[LTRAW] > {timeout E_LDOWN E_LUP E_RDOWN E_RUP 1.0} > [TIMEOUT];
[DT_FOOTDOWN] > {or DT_FOOTUP TIMEOUT}
    > {*quantise IntervalObs short 0.5 long 0.9 timeout};

.defaultstate
ActObs: none;

Firstly the timeout filter is used to produce an event if no foot events occur within one second8.7. This and the foot up/down time intervals extracted earlier are combined and fed into the quantise evidence extractor. This sets IntervalObs to `short' for intervals less than 0.5 seconds, `long' between 0.5 and 0.9 seconds and `timeout' for intervals above 900 milliseconds.

The .defaultstate configuration is also added so that if a timeout does occur, the `ActObs' node is automatically set to its `none' state..


next up previous contents
Next: Experimental Results Up: No Title Previous: Software
Daniel J Willis
2000-10-23