estimate.bounds: Bounds on Response Time Cumulative Distribution Functions for...

Description Usage Arguments Details Value Author(s) References See Also Examples

Description

Calculates the bounds on the range of cumulative distribution functions for response time data for parallel processing models under specified stopping rules (OR, AND, or Single-Target Self-Terminating).

Usage

1
2
estimate.bounds(RT, CR = NULL, stopping.rule = c("OR","AND","STST"), 
  assume.ID=FALSE, numchannels=NULL, unified.space=FALSE)

Arguments

RT

A list of numeric response time arrays for the individual processing channels

CR

A list of correct/incorrect indicator arrays. If NULL, assumes all are correct.

stopping.rule

A character string specifying the stopping rule for the parallel processing model; must be one of "OR", "AND", "STST". If NULL, then "OR" is the default model.

assume.ID

A logical indicating whether the individual channel distributions are assumed to be Identically Distributed (ID). If FALSE, non-ID distributions are estimated from the RT data. If TRUE, only the first array in RT is used, together with numchannels, to estimate the distributions.

numchannels

Number of channels in the parallel processing model when all channels are active. If NULL,number channels will be estimated equal to length of RT.

unified.space

A logical indicating whether the unified capacity space version of the bounds should be estimated.

Details

The estimate.bounds function uses the response times from individual channels processing in isolation to estimae the response time distributions for an n-channel parallel model. The input argument RT must be a list of numeric arrays, containing either one array for each of the n channels to be estimated (so length(RT)=n), or it can have length(RT)=1 and the bounds can be found under an assumption that the n channels are identically distributed to the data in RT. For this latter case, assume.ID=TRUE and numchannels=n (where n ≥ 2) must be specified.

Standard unlimited capacity parallel processing models for n simultaneously operating channels can produce a range of behavior, which is bounded by various functions derived from the probability distributions on each of the i, for i=1,...,n, channels operating in isolation. These bounds depend on the stopping rule under which is the parallel model is assumed to be operating (OR, AND, or STST).

stopping.rule="OR"

Let F_n(t)=P[RT ≤ t]=P[min(T_i) ≤ t] for i=1,...,n, denote the cumulative distribution of response times under a minimum time (logical OR) stopping rule. The general bounds for n-channel parallel processing under an OR stopping rule are:

max_{i}F^{i}_{n-1}(t) ≤ F_{n}(t) ≤ min_{i,j}[F^{i}_{n-1}(t) + F^{j}_{n-1}(t) - F^{ij}_{n-2}(t)].

Under the assumption or conditions that the individual channels are identically distributed, this inequality chain simplifies to

F_{n-1}(t) ≤ F_{n}(t) ≤ [2*F_{n-1}(t) - F_{n-2}(t)].

When the model under scrutiny has only n=2 channels, the inequality chain takes the form:

F^{i}_{1}(t) ≤ F_{2}(t) ≤ [F^{i}_{1}(t) + F^{j}_{1}(t)].

stopping.rule="AND"

Let G_n(t)=P[RT ≤ t]=P[max(T_i) ≤ t], for i=1,...,n, denote the cumulative distribution of repsonse times under a maximum time (logical AND, ehxaustive) stopping rule. The general bounds for n-channel parallel processing under an AND stopping rule are:

max_{i,j}[G^{i}_{n-1}(t) + G^{j}_{n-1}(t) - G^{ij}_{n-2}(t)] ≤ G_{n}(t) ≤ min_{i}G^{i}_{n-1}(t).

Under the assumption or conditions that the individual channels are identically distributed, this inequality chain simplifies to

[2*G_{n-1}(t) - G_{n-2}(t)] ≤ G_{n}(t) ≤ G_{n-1}(t).

When the model under scrutiny has only n=2 channels, the inequality chain takes the form:

[G^{i}_{1}(t) + G^{j}_{1}(t) - 1] ≤ G_{2}(t) ≤ G^{i}_{1}(t).

stopping.rule="STST"

Let F_k(t)=P[RT ≤ t] denote the cumulative distribution of repsonse times under a single-target self-terminating (STST) stopping rule, where the target of interest is on processing channel k among n active channels. The general bounds for n-channel parallel processing under an STST stopping rule are:

∏_{i=1}^{n} F_{1}(t) ≤ F_{k}(t) ≤ ∑_{i=1}^{n} F_{1}(t).

Under the assumption or conditions that the individual channels are identically distributed, this inequality chain simplifies to

[F_{1}(t)]^{n} ≤ F_{k}(t) ≤ n*F_{1}(t).

When the model under scrutiny has only n=2 channels, the inequality chain takes the form:

[F^{i}_{1}(t) * F^{j}_{1}(t)] ≤ F_{k}(t) ≤ [F^{i}_{1}(t) + F^{j}_{1}(t)].

Note that in this case, k=i or k=j, but this may not be specifiable a priori depending on experimental design.

Across all stopping rule conditions, violation of the upper bound indicates performance that is faster than can be predicted by an unlimited capacity parallel model. This may arise from positive (facilitatory) crosstalk between parallel channels, super capacity parallel processing, or some form of co-active architecture in the measured human response time data.

Violation of the lower bound indicates performance that is slower than predictd by an unlimited capacity parallel model. This may arise from negative (inhibitory) crosstalk between parallel channels, fixed capacity or limited capacity processing, or some form of serial architecture in the measured human response time data.

Value

A list containing the following components:

Upper.Bound

An object of class "approxfun"" representing the estimated upper bound on the cumulative distribution function for an unlimited capacity parallel model.

Lower.Bound

A object of class "approxfun" representing the estimated lower bound on the cumulative distribution function for an unlimited capacity parallel model.

Author(s)

Leslie Blaha <leslie.blaha@us.af.mil>

Joe Houpt <joseph.houpt@wright.edu>

References

Blaha, L.M. & Townsend, J.T. (under review). On the capacity of single-target self-terminating processes.

Colonius, H. & Vorberg, D. (1994). Distribution inequalities for parallel models with unlimited capacity. Journal of Mathematical Psychology, 38, 35-58.

Grice, G.R., Canham, L., & Gwynne, J.W. (1984). Absense of a redundant-signals effect in a raction time task with divided attention. Perception & Psychophysics, 36, 565-570.

Miller, J. (1982). Divided attention: Evidence for coactivation with redundant signals. Cognitive Psychology, 14, 247-279.

Townsend, J.T. & Eidels, A. (2011). Workload capacity spaces: a unified methodology for response time measures of efficiency as workload is varied. Psychonomic Bulletin & Review, 18, 659-681.

Townsend, J.T. & Nozawa, G. (1995). Spatio-temporal properties of elementary perception: An investigation of parallel, serial and coactive theories. Journal of Mathematical Psychology, 39, 321-360.

Townsend, J.T. & Wenger, M.J. (2004). A theory of interactive parallel processing: New capacity measures and predictions for a response time inequality series. Psychological Review, 111, 1003–1035.

See Also

ucip.test capacity.or capacity.and capacity.stst approxfun

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#randomly generated data
rate1 <- .35
rate2 <- .3
rate3 <- .4
RT.paa <- rexp(100, rate1)
RT.apa <- rexp(100, rate2)
RT.aap <- rexp(100, rate3)
RT.or <- pmin(rexp(100, rate1), rexp(100, rate2), rexp(100, rate3))
RT.and <- pmax(rexp(100, rate1), rexp(100, rate2), rexp(100, rate3))
tvec <- sort(unique(c(RT.paa, RT.apa, RT.aap, RT.or, RT.and)))

or.bounds <- estimate.bounds(RT=list(RT.paa, RT.apa, RT.aap), CR=NULL, assume.ID=FALSE, 
  unified.space=FALSE)
and.bounds <- estimate.bounds(RT=list(RT.paa, RT.apa, RT.aap))

## Not run: 
#plot the or bounds together with a parallel OR model
matplot(tvec, 
  cbind(or.bounds$Upper.Bound(tvec), or.bounds$Lower.Bound(tvec), ecdf(RT.or)(tvec)),
  type='l', lty=1, ylim=c(0,1), col=2:4, main="Example OR Bounds", xlab="Time", 
  ylab="P(T<t)")
abline(1,0)
legend('topright', c("Upper Bound", "Lower Bound", "Parallel OR Model"), 
  lty=1, col=2:4, bty="n")

#using the dots data set in sft package
data(dots)
attach(dots)
RT.A <- dots[Subject=='S1' & Condition=='OR' & Channel1==2 & Channel2==0, 'RT']
RT.B <- dots[Subject=='S1' & Condition=='OR' & Channel1==0 & Channel2==2, 'RT']
RT.AB <- dots[Subject=='S1' & Condition=='OR' & Channel1==2 & Channel2==2, 'RT']
tvec <- sort(unique(c(RT.A, RT.B, RT.AB)))
Cor.A <- dots[Subject=='S1' & Condition=='OR' & Channel1==2 & Channel2==0, 'Correct']
Cor.B <- dots[Subject=='S1' & Condition=='OR' & Channel1==0 & Channel2==2, 'Correct']
Cor.AB <- dots[Subject=='S1' & Condition=='OR' & Channel1==2 & Channel2==2, 'Correct']
capacity <- capacity.or(list(RT.AB,RT.A,RT.B), list(Cor.AB,Cor.A,Cor.B), ratio=TRUE)
bounds <- estimate.bounds(list(RT.A,RT.B), list(Cor.A,Cor.B), unified.space=TRUE)

#plot unified capacity coefficient space
plot(tvec, capacity$Ct(tvec), type="l", lty=1, col="red", lwd=2)
lines(tvec, bounds$Upper.Bound(tvec), lty=2, col="blue", lwd=2)
lines(tvec, bounds$Lower.Bound(tvec), lty=4, col="blue", lwd=2)
abline(h=1, col="black", lty=1)

## End(Not run)

sft documentation built on May 2, 2019, 6:04 a.m.