To present the proposed method for asynchronous access, we will initially focus on the case where a binary interface must be used to access a set of outcomes of arbitrary size, in order to control a particular device or perform a specific task. It is important to note that this analysis was originally prompted by the solution of a specific access challenge, namely, the development of an appropriate strategy to facilitate *binary navigation control*. In the context of disability engineering, binary navigation control consists of enabling users to voluntarily define and/or modify the motion parameters of an object in space, at any time, by means of a binary interface. Binary navigation control is thus required to enable most activities involving object manipulation with binary interfaces (e.g., single-switch drawing). Many such activities are currently inaccessible to binary and other minimal interface users. For example, when defining suitable alternatives for computer access, Shein (1997) described single-switch, computer-aided drawing as an exceptionally challenging activity that, unlike many other computer-related tasks, may not be broken into predictable sequences accessible through standard synchronous methods [14].

Consider a user who attempts to employ a single button (single-switch) to access a device requiring a set *C* of *κ* > 2 outcomes. The button, in turn, presents only *ς* = 2 possible states *S* = {*s*_{0} : released, *s*_{1} : pressed}. Thus, a simple mapping strategy such as the one shown in Equation (1) may not be used.

Initially, we may define the transition from state *s*_{0} to state *s*_{1} (i.e., a button press) as an intentional, user-prompted change in the interface. We will call this event ϵ. For the sake of simplicity, we will assume that the opposite transition (i.e., a button release) is not an intentional event and thus, will not represent a change in the interface.

According to the principle of asynchronous access described above, every time ϵ occurs, the behavior of the device must be changed. In other words, a new device outcome *c* ∈ *C* must be selected. Note that this principle suggests that the event ϵ is only necessary when the behavior of the device is unacceptable to the user since this would be the only instance where a change in the behavior of the device would be welcome. Conversely, if the behavior of the device is already consistent with the user's intention, the event ϵ is not required. In other words, in our example, the button should be used to indicate the presence of unacceptable behaviors (i.e., errors) in the device through the intentional generation of events ϵ.

Let *n* be the count of consecutive events ϵ, and *c*_{[n]}∈ *C* the device outcome chosen in response to the *n*-th occurrence of ϵ. The fundamental principle of asynchronous access may then be simply defined as:

*c*_{[n]}≠ *c*_{[n-1]}

This principle states that when the *n*-th event ϵ occurs, the resulting device outcome *c*_{[n]}must be different from the outcome *c*_{[n-1]}preceding it. We call this principle a negative acknowledgement (NAK) signaling process because the user is required to activate the interface only when the device behaves erroneously. This term has been borrowed from the analogous error detection, out-of-band, signaling system for error control, often used in telecommunications [15], which, because of its simplicity, has been shown to reduce the communication costs (in terms of time and bandwidth) in environments with significant processing constraints [16].

### The exclusion mask

With the exception of Equation (2), there is no additional information that could help us determine, precisely, which of the remaining elements *c* ≠ *c*_{[n-1]}of *C* should be selected as the outcome *c*_{[n]}. The top trace in Figure 3 shows an alternative graphical representation of this knowledge, which may be formally defined as

{\mathcal{X}}_{[n]}(c)=\{\begin{array}{cc}1& \text{if}c={c}_{[n-1]}\\ 0& \text{if}c\ne {c}_{[n-1]}\end{array}

(3)

Here, the element *c*_{[n-1]}is assigned a maximum value of {\mathcal{X}}_{[n]}(*c* = *c*_{[n-1]}) = 1. This value represents an absolute certainty that *c*_{[n-1]}should be excluded from the selection of the device behavior *c*_{[n]}as stated in Equation (2). Conversely, all other elements share the minimum value {\mathcal{X}}_{[n]}(*c* ≠ *c*_{[n-1]}) = 0, which represents absolute uncertainty about their possibility of exclusion from the selection of *c*_{[n]}. Thus, {\mathcal{X}}_{[n]}(*c*), which may only take values in the range [0, 1], constitutes a numerical representation of the certainty of exclusion of a given outcome *c* ∈ *C* from the selection of *c*_{[n]}. In other words, {\mathcal{X}}_{[n]}(*c*) may be used to describe a range of assumptions (from weak {\mathcal{X}}_{[n]}(*c*) ≃ 0 to strong {\mathcal{X}}_{[n]}(*c*) ≃ 1) regarding the unsuitability of outcomes in the choice *c*_{[n]}. This function will be termed the *spatial exclusion mask* of *c*_{[n]}.

The representation of the NAK principle in Equation (2) by means of the spatial exclusion mask {\mathcal{X}}_{[n]}(*c*) may initially seem unnecessary. However, as it will be demonstrated in the following sections, this mask introduces a framework for the numerical representation of contextual knowledge that may be used to optimize the choice *c*_{[n]}in response to a single binary event ϵ.

#### Spatial assumptions

In any typical access problem, it is expected that the set of outcomes required to control a device may be numerically arranged in a domain where the distance between similar outcomes is shorter than the distance between dissimilar ones. In that case, outcomes in the neighborhood of *c*_{[n-1]}would be expected to resemble *c*_{[n-1]}. This expectation has an important implication in the definition of the spatial exclusion mask {\mathcal{X}}_{[n]}(*c*) because it suggests that all those outcomes near (i.e., similar to) *c*_{[n-1]}should also be given high (i.e., {\mathcal{X}}_{[n]}(*c*) ≃ 1) values of exclusion from the selection of the outcome *c*_{[n]}. This is because it may be assumed that outcomes in the neighborhood of *c*_{[n-1]}are too similar to *c*_{[n-1]}to cause a significant change in the behavior of the device. This assumption, however, is not as certain as the fundamental principle in Equation (2), because it is not directly implied by the event ϵ. Moreover, the certainty of this assumption should be lower for outcomes that are far apart from *c*_{[n-1]}than for outcomes that are closer to *c*_{[n-1]}. Thus, a suitable spatial exclusion mask {\mathcal{X}}_{[n]}(*c*) representing these assumptions may be:

{\mathcal{X}}_{[n]}(c)=\{\begin{array}{ll}1-\frac{r}{{\alpha}_{s}}\hfill & \text{if}r\le {\alpha}_{s}\hfill \\ 0\hfill & \text{if}r{\alpha}_{s}\hfill \end{array}

(4)

where *r* =|*c* - *c*_{[n-1]}| is the distance between a given outcome *c* ∈ *C* and the outcome *c*_{[n-1]}∈ *C* preceding the *n*-th event ϵ. In turn, *α*_{
s
}is a positive integer used to define the support boundaries *c*_{[n-1]}± *α*_{
s
}of {\mathcal{X}}_{[n]}(*c*). The bottom trace in Figure 3 depicts the updated spatial exclusion mask defined in Equation (4). Note that in the limit *α*_{
s
}→ 0, Equation (4) will become Equation (3) as depicted by the top trace in Figure 3.

Evidently, the introduction of the exclusion mask {\mathcal{X}}_{[n]}(*c*) suggests that the best choice of *c*_{[n]}will be the element *c* ∈ *C* that minimizes {\mathcal{X}}_{[n]}(*c*) (i.e., *c*_{[n]}= argmin {\mathcal{X}}_{[n]}(*c*)). In both cases presented (Figure 3), there is more than one element *c* that fulfills this condition, thus, the selection of *c*_{[n]}is still ambiguous. However, note that the updated mask {\mathcal{X}}_{[n]}(*c*) described in Equation (4) reduces the number of eligible outcomes *c* ∈ *C* to those that lie beyond the support limits *c*_{[n-1]}± *α*_{
s
}of the spatial exclusion mask. In fact, if *α*_{
s
}is large enough, a unique solution may be found. The significance of this reduction in the number of eligible outcomes for the choice *c*_{[n]}will be evident in later discussions. In the meanwhile, note that any function {\mathcal{X}}_{[n]}(*c*) with support limits *c*_{[n-1]}± *α*_{
s
}that decreases monotonically from *c*_{[n-1]}to *c*_{[n-1]}± *α*_{
s
}, may be used to represent the spatial assumptions described above.

#### Temporal assumptions

The spatial exclusion mask {\mathcal{X}}_{[n]}(*c*) in Equation (4) represents a series of assumptions, with varying degrees of certainty, that outcomes in the spatial neighborhood of *c*_{[n-1]}should not be eligible in the selection of the subsequent device behavior *c*_{[n]}. Similarly, these assumptions may be extended, starting with the outcome *c*_{[n-1]}, back in time throughout the past history {*c*_{[n-2]}, *c*_{[n-3]}, *c*_{[n-4]},...} of selected outcomes. Thus, as in the spatial case, outcomes in the temporal neighborhood of *c*_{[n-1]}(i.e., immediately preceding *c*_{[n-1]}) should also share a high value of exclusion from the choice *c*_{[n]}, while outcomes that belong to the remote past history of *c*_{[n-1]}should be assigned lower values. This is because we may assume that if the recently chosen outcome *c*_{[n-1]}has already been excluded, there is a high level of certainty that this outcome will not be desired in the near future. However, over time, this outcome should be made available. Evidently, extending this assumption through time requires a memory process that enables the storage of historical information on all outcomes preceding the *n*-th event ϵ. This information must then be available at the time *t*_{[n]}, when this event occurs, in order to inform the selection of *c*_{[n]}. The spatial exclusion mask {\mathcal{X}}_{[n]}(*c*), introduced above, cannot be employed for this purpose since it only describes assumptions valid at *t*_{[n]}without providing any means to describe assumptions associated with the set of past events {*n*-1, *n*-2, *n*-3,...}. Thus, an additional mechanism that enables the incorporation of historical information in the choice *c*_{[n]}becomes necessary.

### The exclusion estimate

Consider the function ϒ(*c*, *t*) depicted in the discrete time sequence presented in Figure 4. This function describes the viscoelastic deformation of the 1-dimensional domain composed of all elements *c* ∈ *C*. The figure shows parallel bands representing the state of the domain at regular time intervals. In order to elucidate the progression of time, the bands have been colored from dark to clear corresponding to the transition from older to more recent states of the domain. We will assume ϒ(*c*, *t*) has been left undisturbed for a long time *t* <*t*_{[n]}allowing it to maintain its natural at state (i.e., ϒ(*c*, *t* <*t*_{[n]}) = 0 for all possible outcomes *c* ∈ *C*). Then, at a given time *t* = *t*_{[n]}, the domain is subject to a deformation {\mathcal{X}}_{[n]}(*c*) as depicted by the bottom trace in Figure 3. By definition, the viscoelastic deformation process would allow ϒ(*c*, *t*) to recover its natural state. However, as depicted by subsequent bands, this will only happen gradually over time.

The sequence in Figure 4 depicts the temporal memory effect inherent to the mechanical property of viscoelasticity. Note that this property fulfills the requirements stated in the previous section for the incorporation of temporal assumptions in the choice *c*_{[n]}. In particular, in the context of asynchronous access, the deformation ϒ(*c*, *t*) subject to consecutive disturbances {\mathcal{X}}_{[n]}(*c*), would allow recent assumptions {\mathcal{X}}_{[n]}(*c*) (i.e., those in the temporal neighborhood of *c*_{[n-1]}) to be assigned higher values of exclusion than former ones. In other words, the function ϒ(*c*, *t*) may be used to record the the full set of historical assumptions represented by all spatial exclusion masks \{{\mathcal{X}}_{[n-1]}(c),{\mathcal{X}}_{[n-2]}(c),{\mathcal{X}}_{[n-3]}(c)\mathrm{...}\} preceding the *n*-th event ϵ. A simple recursive algorithm may be used to represent this process.

Let Δ*t* be the period between the time *t*_{[n]}of the *n*-th event ϵ and the time *t*_{[n-1]}of the preceding event, that is

Δ*t* = *t*_{[n]}- *t*_{[n-1]}

and ϒ_{[n]}(*c*) the function ϒ(*c*, *t*) evaluated at time *t*_{[n]}, that is

ϒ_{[n]}(*c*) = ϒ(*c*, *t* = *t*_{[n]})

The spatial and temporal assumptions previously introduced may then be represented, simultaneously, as the occurrence of disturbances {\mathcal{X}}_{[n]}(*c*) on ϒ_{[n]}(*c*) with viscoelastic decay {\mathcal{H}}_{[n]}(Δ*t*)

{\Upsilon}_{[n]}(c)={\mathcal{H}}_{[n]}(\Delta t){\Upsilon}_{[n-1]}(c)+{\mathcal{X}}_{[n]}(c)\{1-{\mathcal{H}}_{[n]}(\Delta t){\Upsilon}_{[n-1]}(c)\}

(7)

We will refer to ϒ_{[n]}(*c*) in Equation (7) as the *exclusion estimate* of the current choice *c*_{[n]}. Note that, ϒ_{[n]}(*c*) is defined recursively in terms of the exclusion estimate ϒ_{[n-1]}(*c*) of the previous choice *c*_{[n-1]}. All functions ϒ, \mathcal{X} and \mathcal{H} are constrained to the range [0, 1]. The function {\mathcal{H}}_{[n]}(Δ*t*), used to apply a viscoelastic decay on ϒ_{[n-1]}(*c*), should decrease monotonically with increasing values of Δ*t*. A suitable choice for {\mathcal{H}}_{[n]}(Δ(*t*) may thus be the family of functions

{\mathcal{H}}_{[n]}(\Delta t)={e}^{-\Delta t/\tau}

(8)

where *τ* is a time constant always greater than zero. The exponential decay described in Equation (8) derives from the behavior of real viscoelastic systems such as the discharge of an electric capacitor or the restoration of a mechanical shock absorber [17]. In all these cases, the constant *τ* is termed the *viscoelastic constant* and it is directly proportional to the duration of the viscoelastic restoration of ϒ_{[n]}(*c*).

Note that {\mathcal{X}}_{[n]}(*c*) and {\mathcal{H}}_{[n]}(Δ*t*) are weighting functions acting on the spatial and temporal domains, respectively, of the exclusion estimate ϒ_{[n]}(*c*). While the spatial exclusion mask {\mathcal{X}}_{[n]}(*c*) ensures that outcomes similar to *c*_{[n-1]}are excluded from the choice *c*_{[n]}, the function {\mathcal{H}}_{[n]}(Δ*t*) ensures that recent exclusion estimates ϒ(*c*, *t*) are remembered while old ones are forgotten. Thus, {\mathcal{H}}_{[n]}(Δ*t*) is our *temporal exclusion mask*. Note that the support of {\mathcal{H}}_{[n]}(Δ*t*) is defined for values in the range [0, *α*_{
t
}] with *α*_{
t
}> 0. In the case of the family of functions in Equation (8), *α*_{
t
}= ∞.

The definition of the exclusion estimate ϒ_{[n]}(*c*) in Equation (7), which now integrates spatial and temporal assumptions, suggests that the best possible choice of *c*_{[n]}should be the element *c* ∈ *C* that minimizes ϒ_{[n]}(*c*). Thus,

*C*_{[n]}= argmin ϒ_{[n]}(*c*)

Figure 5 shows a discrete time sequence of the evolution of ϒ(*c*, *t*), according to Equation (9), where three different events ϵ occur at consecutive times. Note that it has taken only two events ϵ, with corresponding exclusion masks {\mathcal{X}}_{[n-2]}(*c*) and {\mathcal{X}}_{[n-1]}(*c*), for ϒ(*c*, *t*) to converge from a state of absolute uncertainty for *t* <*t*_{[n-2]}, to a unique solution *c*_{[n-1]}at *t* = *t*_{[n-1]}.

Equation (9) summarizes the decision process proposed for the asynchronous selection of a new device outcome *c*_{[n]}∈ *C* in response to a single binary event ϵ, consisting, in our example of single-switch access, of an intentional button press. Thanks to the assumptions incorporated in {\mathcal{X}}_{[n]}(*c*) and {\mathcal{H}}_{[n]}(Δ*t*), the number of eligible device outcomes in the choice *c*_{[n]}is significantly reduced. In fact, with the appropriate parameters, Equation (9) will consistently converge to a unique solution soon after the interaction between the user and the device under control is initiated.

The process for asynchronous access presented here incorporates a number of desirable properties that make it easy to implement and adaptable to a wide variety of contexts. Among these properties are:

There are no restrictions on the time at which a particular event ϵ may occur. For users, this translates into the ability to respond immediately to a change in their intentions or an unexpected external disturbance on the device under control.

The recursive nature of the exclusion estimate ϒ_{[n]}(*c*) eliminates the need for the implicit calculation of the effects of the set of historical assumptions \{{\mathcal{X}}_{[n-1]}(c),{\mathcal{X}}_{[n-2]}(c),{\mathcal{X}}_{[n-3]}(c),\mathrm{...}\} on the selection of *c*_{[n]}, thus reducing the processing power and memory storage capacity required for the implementation of the proposed method for asynchronous access.

There is no limit on the number *κ* of outcomes *C* that may be made available to the user through this method. In fact, the set *C* may be defined as a continuous interval of all possible real valued outcomes *c* ∈ [*c*_{
min
}, *c*_{
max
}], where *c*_{
min
}and *c*_{
max
}are the lower and upper boundaries of *C*, respectively. Evidently, in this case, *κ* = ∞.

### Summary

1. According to Equation (2), when the *n*-th event ϵ occurs, the device outcome *c*_{[n]}must be different from the outcome *c*_{[n-1]}immediately preceding it. In other words, there is absolute certainty that *c*_{[n-1]}should be excluded from the selection of *c*_{[n]}. Thus, the event ϵ, which represents a voluntary, user-prompted change in the interface, should be employed by users as an error indicator. This requires users to generate events ϵ every time the behavior of the device is inconsistent with their intentions.

2. Even though the exclusion principle in Equation (2) is the only knowledge implied, with absolute certainty, by the occurrence of event ϵ, it is also possible to assume, although with a lower degree of certainty, that behaviors similar to *c*_{[n-1]}should also be excluded from the selection of *c*_{[n]}. This assumption is defined by the spatial exclusion mask {\mathcal{X}}_{[n]}(*c*), a function with values in the range [0, 1] and support *c*_{[n-1]}± *α*_{
s
}, decreasing monotonically from {\mathcal{X}}_{[n]}(*c* = *c*_{[n-1])}= 1 (i.e., the strongest assumption of exclusion) to {\mathcal{X}}_{[n]}(*c* = *c*_{[n-1]}± *α*_{
s
}) (i.e., the weakest assumption of exclusion) as candidate outcomes *c* ∈ *C* become decreasingly similar to *c*_{[n-1]}.

3. It may also be assumed that device outcomes resulting from recent selections (i.e., immediately preceding the *n*-th event ϵ), should be excluded from the selection of *c*_{[n]}, while outcomes that belong to the remote past of *n* should become eligible. The incorporation of this assumption is made possible through the introduction of the exclusion estimate ϒ_{[n]}(*c*) and the temporal exclusion mask {\mathcal{H}}_{[n]}(Δ*t*), where Δ*t* is, according to Equation (5), the period between the time *t*_{[n]}of the *n*-th event and the time *t*_{[n-1]}of its predecessor. According to Equation (7), the exclusion estimate ϒ_{[n]}(*c*), which is recursively defined in terms of the exclusion estimate ϒ_{[n-1]}(*c*) of the preceding event, acts as a viscoelastic domain storing the set of historical deformations \{{\mathcal{X}}_{[n]}(c),{\mathcal{X}}_{[n-1]}(c),{\mathcal{X}}_{[n-2]}(c),\mathrm{...}\} subject to a viscoelastic decay described by the temporal exclusion mask {\mathcal{H}}_{[n]}(Δ*t*). Thus, {\mathcal{H}}_{[n]}(Δ*t*) must decrease monotonically from {\mathcal{X}}_{[n]}(Δ*t* = 0) = 1 to {\mathcal{H}}_{[n]}(Δ*t* = ∞) = 0. Note that the functions {\mathcal{X}}_{[n]}(*c*) and {\mathcal{H}}_{[n]}(Δ*t*) act as weighting masks on ϒ_{[n]}(*c*) updating the certainty of exclusion, from the choice *c*_{[n]}, for every candidate outcome *c* ∈ *C*, according to reasonable spatial and temporal assumptions, respectively.

4. Once the exclusion estimate ϒ_{[n]}(*c*) is calculated, it will be possible to make an informed decision regarding the best possible choice of *c*_{[n]}∈ *C* according to Equation (9).