How to find the inverse of integral function if use numerical integration?

51 Views Asked by At

currently I am doing some research on how to produce a time-dependent receiver operating characteristic (ROC) curve parametrically (means using parametric distribution). To construct a time-dependent ROC curve, we need to have two information which are the true positive (TP) and false positive (FP). Both information are defined as below, $$ TP(c,t) = Pr(X>c|T\le t) = \frac{Pr(X>c,T \le t)}{F(t)}$$ $$ FP(c,t) = Pr(X>c|T > t)= \frac{Pr(X>c,T > t)}{1-F(t)}. $$

Here, $X$ represents a biomarker value and $T$ represents the time-to-event (either death or censored time). The TP and FP are basically a conditional distribution which rely on numerical integration for computation since the joint model used results to a nonelementary integrals.

To produce the time-dependent ROC, we can use the following equation. $$ ROC(p,t) = TP( FP^{-1}(p),t).$$

where $p \in [0,1]$ is the probability/percentile value of the FP.

As an example, the joint density distribution is given as $f(x,t)=\frac{1}{\sqrt{2\pi \sigma^2}}e^{\big(x\beta - \frac{(x-\mu)^2}{2\sigma^2}\big)}\lambda e^{-e^{x\beta}\lambda t}$, a combination of Normal-Exponential distribution. Let's say that I already computed the denominator for each FP & TP as 0.3 and 0.7 respectively at $t=3.$ Thus, I can find the inverse of FP as $$ Pr(X>c,T>t) = 0.3p$$ $$ \int_{c}^{\infty}\int_{3}^{\infty} f(x,t) dtdx = 0.3p$$ and with some change of variable, the inner integral is solved and become $$ \int_{c}^{\infty} \frac{1}{\sqrt{2\pi \sigma^2}}e^{\big(- \frac{(x-\mu)^2}{2\sigma^2}\big)} e^{-3e^{x\beta}\lambda } dx = 0.3p.$$

Recognizing that the integral above is just an expected value of a Normal distribution and thus nonelementary, we can use Monte Carlo Integration method to approximate it. By randomly generating $N$ samples from a $Normal(\mu,\sigma)$ distribution, the above integrals are approximated as $$ \frac{1}{N}\sum_{i=1}^{N}e^{-3e^{u_{i}\beta}\lambda } \mathbb{1}_{u_{i}>c} = 0.3p$$

and $\mathbb{1}_{u_{i}>c}$ is an indicator function to check if the generated sample is greater than $c$. My question is that how we can invert the numerical integration to find value $c$ which correspond to $0.3p$?

Is there other way that I can use to approximate my integrals so that I can invert it and find $c$?