c-rutter / crcrdm

Robust Decision Making Tools for Cancer Screening Models
https://c-rutter.github.io/crcrdm/
GNU General Public License v2.0
3 stars 0 forks source link
cancer cancer-research microsimulation r-package robust-decision-making simulation

RDM tools for Cancer Screening Models

Build & R-CMD
Check Test
Coverage codecov Lifecycle:
stable

Robust Decision Making is a set of methods and tools that help modelers inform policy under conditions of deep uncertainty. Characterizing the robustness of policy recommendations to uncertain assumptions is a crucial concern of modelers. While the computational cost of uncertainty analyses can be high, High-Performance Computing (HPC) is increasingly ubiquitous and accessible. Nevertheless, using HPC tools involves a steep learning curve, which may hinder their adoption. This repository houses `crcrdm` – an R package designed to facilitate the analysis of Cancer Screening Models using HPC resources. `crcrdm` provides an interface between your model and a parallel back-end - an HPC workflow system that orchestrates concurrent model runs. Currently, we use this package with EMEWS. This package aims to make it easier to define and efficiently run large experimental designs, reducing the need to create ad-hoc analytical code for each analysis.

Installation

This package can be installed from GitHub with:

# install.packages("remotes")
remotes::install_github("c-rutter/crcrdm")

Status

This package is being used by the CRC-SPIN modeling team, but the CRC-SPIN model is not contained in the package. The user pool for this package is very small and we have no plans of releasing it to CRAN at this time. Future iterations of this work might make this package more general. If you would like to use this package and are interested in collaborating with us, get in touch.

Documentation

A documentation page is available at this link. This documentation page describes the package main classes and their methods.

Key classes

This package implements two R6 classes:

  1. crcmodel : An R6 class representing single model structure and its posterior distribution. A crcmodel can be either calibrated or not. if it is calibrated, the model object can include the posterior distribution of its parameters. A single model may contain multiple posterior distributions when those parameter sets were created by different calibration runs, with potentially different targets or priors.
  2. crcexperiment : Contains the definition of an experiment experiment to be applied over the crcmodels included in it.

Automated Tests

This package is tested automatically after every commit across a few platforms. Results from these automated checks can be found here. A test coverage report can be found here.