MyNixOS website logo
Description

Simplex Optimization Algorithms for Laboratory and Manufacturing Processes.

Simplex optimization algorithms as firstly proposed by Spendley et al. (1962) <doi:10.1080/00401706.1962.10490033> and later modified by Nelder and Mead (1965) <doi:10.1093/comjnl/7.4.308> for laboratory and manufacturing processes. The package also provides tools for graphical representation of the simplexes and some example response surfaces that are useful in illustrating the optimization process.

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.

Metadata

Version

0.1.2

License

Unknown

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows