Learn R Programming

labsimplex

This package implements the simplex algorithms (fixed and variable step-size) for laboratory and proccess optimizations.

Installation

The development versión of labsimplex can be installed using install_github() function from devtools package:

devtools::install_github(repo = 'crparedes/labsimplex', build_vignettes = TRUE)

The released version of labsimplex is available from CRAN with:

install.packages("labsimplex")

Example

This is a basic example which shows you how to start an optimization procces:

Suppose there is a reaction taking place in water at determinate pH and temperature. Both variables have shown to have effect on the yiel of the reaction and the purposse is to maximize it. Ussually the reaction is made at 350 °C and pH 5.5. This will be the starting point. Rational changes can be made in steps of 10°C and 0.5 units of pH for each variable.

library(labsimplex)
yield <- labsimplex(n = 2, start = c(350, 5.5), var.name = c('Temp', 'pH'),
                    stepsize = c(10, 0.5))
print(yield)
#> Current simplex:
#>           Temp   pH . Response Label Nature
#> Vertex.1:  350 5.50 |       NA    NA      S
#> Vertex.2:  340 5.75 |       NA    NA      S
#> Vertex.3:  340 5.25 |       NA    NA      S
#> 
#> Conventions:
#>     Labels:                    Nature:
#>        W: Worst or Wastebasket    S:  Starting
#>        N: Next to the worst       R:  Reflected
#>        B: Best                    E:  Expanded
#>                                   Cr: Contraction on the reflection side
#>        D: Disregarded             Cw: Contraction on the worst side
#> 
#>       Use print(..., conventions = FALSE) to disable conventions printing.

Is possible to plot the simplex object to visualize the coordinates of the vertexes:

plot(yield)

The experiments corresponding to the Temp. and pH values indicated for each vertex must be performed and the response must be recorded. Suppose the responses for vertexes 1 to 3 were 57%, 65% and 54% respectively. The new vertex can be generated and the simplex movement can be visualized again ploting the simplex.

generateVertex(simplex = yield, qflv = c(57, 65, 54), overwrite = TRUE)
#> New vertex to be evaluated: 
#> Temp   pH 
#>  350    6
plot(yield)

For more information, read the package manual and vignette.

Copy Link

Version

Install

install.packages('labsimplex')

Monthly Downloads

181

Version

0.1.2

License

GPL (>= 2)

Maintainer

Cristhian Paredes

Last Published

June 3rd, 2020

Functions in labsimplex (0.1.2)

plot.smplx

Draws a two dimentional plot of the vertexes in a simplex
labsimplex

Generates a simplex object
labsimplex-package

labsimplex: Simplex Optimization Algorithms for Laboratory and Manufacturing Processes
addSimplex2Surface

Adds the simplex movements to a response surface contour
cntr

Contour plot of example response surfaces
generateVertex

Generates the new vertex of a simplex optimization
adjustVertex

Modify the coordinates of given vertexes of a simplex
exampleOptimization

Performs a complete simplex optimization over a response surface
ExampleSurfaces

Multivariate functions that define hypothetical response surfaces.
plotSimplex3D

Draws a three dimentional plot of the vertexes in a simplex
print.smplx

S3 method print for simplex objects
plotSimplexResponse

Plots the response versus the vertex number of a simplex optimization.
simplexImport

Imports the information contained in a .smplx file.
prspctv

3D perspective plot of example response surfaces
simplexExport

Exports the information contained in an object of class smplx.