bs_ciuupi {ciuupi} | R Documentation |
Computes the the functions b
and s
that specify the CIUUPI for all possible
values of \sigma
and the observed response vector
Description
Chooses the positive number d
and the positive integer q
, sets
h=d/q
, and then computes the
(2q-1)
-vector
\big(b(h),...,b((q-1)h),
s(0),s(h)...,s((q-1)h)\big)
that determines, via cubic spline interpolation, the functions
b
and s
which specify
the confidence interval for \theta
that utilizes the uncertain prior information (CIUUPI),
for all possible values of \sigma
and the observed response vector.
To an excellent approximation, this confidence interval
has minimum coverage probability
1-\alpha
.
Usage
bs_ciuupi(alpha, rho, natural = 1)
Arguments
alpha |
The desired minimum coverage probability
is |
rho |
The known correlation |
natural |
Equal to 1 (default) if the functions |
Details
Suppose that
y = X \beta + \varepsilon
where y
is a random n
-vector of
responses, X
is a known n
by p
matrix
with linearly
independent columns, \beta
is an unknown parameter
p
-vector and
\varepsilon
is the random error with components that are iid normally distributed
with zero mean and known variance \sigma^2
.
The parameter of interest is
\theta = a^{\top} \beta
.
Also let \tau = c^{\top}\beta -t
, where a
and c
are specified linearly independent
vectors and t
is a specified number.
The uncertain prior information is that \tau = 0
.
Let rho
denote the known
correlation between the \widehat{\theta}
and \widehat{\tau}
.
We can compute rho
from given values of a
, c
and X
using the function acX_to_rho
.
The confidence interval for \theta
,
with minimum coverage probability
1-
alpha
, that utilizes the uncertain prior
information that
\tau =
0 belongs to a class of confidence
intervals indexed
by the functions b
and s
.
The function b
is an odd continuous function and
the function s
is an even
continuous function. In addition, b(x)=0
and
s(x)
is equal to the
1-
alpha
/2
quantile of the
standard normal distribution for all |x| \ge d
, where
d
is a given positive number.
Extensive numerical explorations
have been used to find a formula (in terms of
alpha
and rho
) for a 'goldilocks'
value of d
that is neither too large nor too small.
Then let q
=ceiling(d
/0.75) and h=d/q
.
The values of the functions b
and s
in
the interval [-d,d]
are specified by the (2q-1)
-vector
\big(b(h),...,b((q-1)h), s(0),s(h)...,s((q-1)h) \big)
.
The values of b(kh)
and s(kh)
for k=-q,...,q
are
deduced from this vector using the assumptions made about
the functions b
and s
.
The values of b(x)
and s(x)
for any x
in the interval
[-d, d]
are then found using cube spline interpolation using the
values of b(kh)
and s(kh)
for k=-q,...,q
.
For natural
=1 (default) this is 'natural' cubic
spline interpolation and for natural
=0 this is
'clamped' cubic spline interpolation.
The vector \big(b(h),...,b((q-1)h), s(0),s(h)...,s((q-1)h)\big)
is found by numerical nonlinear constrained optimization
so that the confidence interval has minimum
coverage probability 1-
alpha
and utilizes
the uncertain prior information
through its desirable expected length properties.
This optimization is performed using the
slsqp
function
in the nloptr
package.
Value
A list with the following components.
alpha, rho, natural: the inputs
d: a 'goldilocks' value of d
that is not too large
and not too small
n.ints: number of equal-length consecutive
intervals whose union is [0,d]
,
this is the same as q
lambda.star: the computed value of \lambda^*
bsvec: the vector
\big(b(h),...,b((q-1)h), s(0),s(h)...,s((q-1)h) \big)
that determines
the functions b
and s
that specify the CIUUPI for all possible
values of \sigma
and observed response vector
comp.time: the computation time in seconds
Examples
alpha <- 0.05
rho <- - 1 / sqrt(2)
bs.list <- bs_ciuupi(alpha, rho)