The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

optedr

CRAN status Lifecycle: stable

Overview

The package optedr is an optimal experimental design suite for calculating optimal designs, D-augmenting designs and efficiently rounding approximate design. Among its capabilities are:

Installation

You can install the released version of optedr from CRAN with:

install.packages("optedr")

You can install the latest version of the package from GitHub with:

devtools::install_github("kezrael/optedr")

Functions

The user available functions are:

The optdes object generated by opt_des() has its own implementation of print(), summary() and plot().

Usage

library(optedr)
#> ℹ Loading optedr

The calculation of an optimal design requires a to specify the criterion, the model, the parameters and their initial values and the design_space.

resArr.D <- opt_des(criterion = "D-Optimality",
                    model = y ~ a*exp(-b/x),
                    parameters = c("a", "b"),
                    par_values = c(1, 1500),
                    design_space = c(212, 422))
#> 
#> ℹ Stop condition not reached, max iterations performed
#> ⠙ Calculating optimal design 22 done (27/s) | 812msℹ The lower bound for efficiency is 99.9986396401789%
#>                                                     

resArr.D$optdes
#>      Point    Weight
#> 1 329.2966 0.5000068
#> 2 422.0000 0.4999932
resArr.D$sens

resArr.D$convergence

After calculating the D-optimal design, the user might want to add points to the design to fit their needs:

aug_arr <- augment_design("D-Optimality", resArr.D$optdes, 0.3, y ~ a * exp(-b/x),
               parameters = c("a", "b"),
               par_values = c(1, 1500),
               design_space = c(212, 422),
               F)
aug_arr
#> [1] NA

This new design can be rounded to the desired number of points:

(exact_design <- efficient_round(aug_arr, 20))
#>      Point Weight
#> 1 329.2966      7
#> 2 422.0000      7
#> 3 260.0000      3
#> 4 380.0000      3

And its efficiency compared against the optimum:

aprox_design <- exact_design
aprox_design$Weight <- aprox_design$Weight / sum(aprox_design$Weight)

design_efficiency(aprox_design, resArr.D)
#> ℹ The efficiency of the design is 86.0744360399533%
#> [1] 0.8607444

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.