--- title: "Choosing and confirming follow-up recipes in a 23-run lipid screen" output: rmarkdown::html_vignette vignette: > %\VignetteIndexEntry{Choosing and confirming follow-up recipes in a 23-run lipid screen} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- The worked example fits elastic-net SVEM, forward-likelihood SVEM, GauPro and Extra Trees on the same experimental factors. The installed package includes the complete executable analysis, so the results can be regenerated with different measurements or a different preparation budget. To rerun it, copy the source to a writable project directory and render it there. Install the suggested packages `GauPro` and `ranger` to include both companions. The final sections use a two-factor teaching surface and an optional general spline on the full mixture/process experiment with its nominal ingredient factor. They show explicit model and exploration counts. The worklist reports how many distinct settings those models nominate. Install the suggested package `mgcv` for that section. The journal articles are the fixed versions of record. The authors occasionally update the arXiv manuscripts. These links open the latest posted revisions. * Karl et al., *A Workflow for Lipid Nanoparticle (LNP) Formulation Optimization*. [Latest arXiv version](https://arxiv.org/abs/2212.11264) · [JoVE article](https://doi.org/10.3791/65200). * Karl, *SVEMnet: An R Package for Self-Validated Elastic-Net Ensembles and Multi-Response Optimization*. [Latest arXiv version](https://arxiv.org/abs/2511.20968) · [Chemometrics article](https://doi.org/10.1016/j.chemolab.2026.105660). ```r source_file <- system.file("examples", "lipid-screen-follow-up.Rmd", package = "SVEMnet") file.copy(source_file, "my-lipid-follow-up.Rmd") rmarkdown::render("my-lipid-follow-up.Rmd") ``` The GP fits in this example use one seeded optimizer start per endpoint. Rerunning with a different seed can lead to a different fitted surface and recipe nomination. Compare plausible nominees in the laboratory when that sensitivity affects the decision. For a large recipe table, the optional medoid step compares pairs of high-spread recipes. Its memory cost grows with the square of the shortlist size. A discrete table of settings the lab can prepare keeps this step small. ```{r worked-results, echo=FALSE, results='asis'} snapshot <- system.file("examples", "lipid-screen-follow-up.md", package = "SVEMnet", mustWork = TRUE) cat(readLines(snapshot, encoding = "UTF-8"), sep = "\n") ```