MC_IS_gsys: Monte Carlo Importance Sampling using smooth system...

View source: R/mc_is_system.R

MC_IS_gsysR Documentation

Monte Carlo Importance Sampling using smooth system aggregation

Description

Performs reliability estimation for systems of limit-state functions by constructing a **smooth global system limit-state function** and applying the existing single-LSF importance sampling algorithm.

Usage

MC_IS_gsys(
  sys_input,
  sys_structure = "serial",
  smooth_kappa = 20,
  cov_user = 0.05,
  n_batch = 5000,
  n_max = 1e+06,
  use_threads = 4,
  backend = "future",
  dataRecord = TRUE,
  densityType = "norm",
  dps = NULL,
  debug.level = 0,
  seed = NULL,
  adaptive_alpha = FALSE,
  alpha_update_rate = 0.1,
  adaptive_batch = FALSE,
  batch_control = list(),
  min_adapt_samples = 10000,
  alpha_min = 0.02,
  stability_mode = "robust"
)

Arguments

sys_input

List of SYS_LSF objects defining the system.

sys_structure

System aggregation type: "serial", "parallel", or a custom function.

smooth_kappa

Smoothing parameter controlling the approximation of min/max aggregation.

cov_user

Target coefficient of variation of the estimator.

n_batch

Number of samples per batch.

n_max

Maximum total number of samples (see stopping criterion).

use_threads

Number of chunks per batch. With backend = "parallel" also the number of cores or workers.

backend

Parallel backend, "future" or "parallel". If NULL (default), "parallel" with one worker is used, i.e. the calculation runs sequentially on every system.

dataRecord

Logical. If TRUE, the results of each batch are returned in data. Single limit-state function only.

densityType

Currently without effect. A normal sampling density in standard normal space is always used.

dps

Optional design points in physical space. If supplied, FORM is skipped for the components. Single limit-state function: a numeric vector with one value per variable (or one value for all). System: a list with one such vector per limit-state function. A numeric vector with one value per limit-state function is accepted if each function has exactly one variable.

debug.level

Verbosity level: 0 = silent, 1 = summary, 2 = detailed output.

seed

Optional integer seed for reproducible results.

adaptive_alpha

Logical. Adaptive mixture weights are not implemented. Without effect for a single limit-state function. For serial multimodal systems the calculation stops with an error once min_adapt_samples is exceeded.

alpha_update_rate

Reserved for adaptive_alpha, currently without effect.

adaptive_batch

Logical. Systems only. If TRUE, the batch size is adapted from the current effective number of failure samples, so that cov_user is expected to be reached after K_future further batches.

batch_control

List for adaptive_batch with the elements n_min and n_max (bounds of the batch size) and K_future (number of remaining batches). Systems only.

min_adapt_samples

Reserved for adaptive_alpha (see there).

alpha_min

Reserved for adaptive_alpha, currently without effect.

stability_mode

"robust" or "fast". Without influence on the result, all sums are accumulated in the log domain. For serial multimodal systems "fast" additionally returns the effective sample size per mixture component (ESS_modes).

Details

The system limit-state function is built using build_gsys(), which aggregates component limit states via smooth min/max operators.

This approach converts a system reliability problem into a standard single limit-state reliability problem.

Value

Result object returned by MC_IS_single() with additional metadata describing the system configuration.


TesiproV documentation built on Oct. 28, 2026, 5:13 p.m.