% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/mle_estimation.R
\name{mle_adapt2_phcs}
\alias{mle_adapt2_phcs}
\title{Maximum Likelihood Estimation under Adaptive Type-II Progressive Hybrid Censoring}
\usage{
mle_adapt2_phcs(
  data,
  n,
  m,
  T_thresh,
  R,
  pdf,
  cdf = NULL,
  surf = NULL,
  start,
  method = "NR",
  lower = NULL,
  upper = NULL,
  max_iter = 500,
  ...
)
}
\arguments{
\item{data}{Numeric vector of m observed failure times.}

\item{n}{Integer, total initial sample size placed on test.}

\item{m}{Integer, pre-fixed target number of failures.}

\item{T_thresh}{Numeric, pre-fixed time threshold T > 0.}

\item{R}{Numeric vector of length m, progressive censoring scheme.}

\item{pdf}{Function, user-supplied probability density function pdf(x, par).}

\item{cdf}{Function (optional), user-supplied cumulative distribution function cdf(x, par).}

\item{surf}{Function (optional), user-supplied survival function surf(x, par).}

\item{start}{Numeric vector, initial parameter guesses.}

\item{method}{Optimization method: "NR", "BFGS", "BFGSR", "BHHH", "SANN", "CG", or "NM" (case-insensitive, default "NR").}

\item{lower}{Numeric vector (optional), lower bounds for parameters.}

\item{upper}{Numeric vector (optional), upper bounds for parameters.}

\item{max_iter}{Maximum iterations for optimization algorithm (default 500).}

\item{...}{Additional arguments passed to optimization routines.}
}
\value{
An S3 object of class \code{mle_adapt_fit} containing estimates, standard errors, log-likelihood, Hessian, covariance matrix, and model info.
}
\description{
Computes Maximum Likelihood Estimates (MLE) under the Adaptive Type-II Progressive Hybrid Censoring Scheme
using various optimization algorithms ("NR", "BFGS", "BFGSR", "BHHH", "SANN", "CG", "NM").
}
\examples{
set.seed(123)
my_cdf <- function(x, par) pexp(x, rate = par[1])
my_pdf <- function(x, par) dexp(x, rate = par[1])
my_surf <- function(x, par) 1 - pexp(x, rate = par[1])
R_plan <- c(rep(1, 8), rep(0, 4))
dat <- r_adapt2_phcs(
  n = 20, m = 12, T_thresh = 2.5,
  R = R_plan, pdf = my_pdf,
  cdf = my_cdf, par = 0.5
)$data
fit <- mle_adapt2_phcs(
  data = dat, n = 20, m = 12,
  T_thresh = 2.5, R = R_plan,
  pdf = my_pdf, cdf = my_cdf,
  surf = my_surf, start = c(rate = 1.0),
  method = "BFGS"
)
summary(fit)
}
